]> granicus.if.org Git - curl/commitdiff
idn_win32: Use boolean based success codes
authorSteve Holme <steve_holme@hotmail.com>
Fri, 11 Mar 2016 07:24:39 +0000 (07:24 +0000)
committerSteve Holme <steve_holme@hotmail.com>
Fri, 11 Mar 2016 07:24:39 +0000 (07:24 +0000)
Rather than use 0 and 1 integer base result codes use a FALSE / TRUE
based success code.

lib/idn_win32.c
lib/url.c

index 8b5baf73b351a36ab6b6c26a05a617961e58dbc9..8dc300b36d01399828c1d35b546742401852095d 100644 (file)
@@ -65,12 +65,13 @@ WINBASEAPI int WINAPI IdnToUnicode(DWORD dwFlags,
 
 #define IDN_MAX_LENGTH 255
 
-int curl_win32_idn_to_ascii(const char *in, char **out);
-int curl_win32_ascii_to_idn(const char *in, char **out);
+bool curl_win32_idn_to_ascii(const char *in, char **out);
+bool curl_win32_ascii_to_idn(const char *in, char **out);
 
-int curl_win32_idn_to_ascii(const char *in, char **out)
+bool curl_win32_idn_to_ascii(const char *in, char **out)
 {
-  int ret = 0;
+  bool success = FALSE;
+
   wchar_t *in_w = Curl_convert_UTF8_to_wchar(in);
   if(in_w) {
     wchar_t punycode[IDN_MAX_LENGTH];
@@ -79,15 +80,17 @@ int curl_win32_idn_to_ascii(const char *in, char **out)
     if(chars) {
       *out = Curl_convert_wchar_to_UTF8(punycode);
       if(*out)
-        ret = 1; /* success */
+        success = TRUE;
     }
   }
-  return ret;
+
+  return success;
 }
 
-int curl_win32_ascii_to_idn(const char *in, char **out)
+bool curl_win32_ascii_to_idn(const char *in, char **out)
 {
-  int ret = 0;
+  bool success = FALSE;
+
   wchar_t *in_w = Curl_convert_UTF8_to_wchar(in);
   if(in_w) {
     size_t in_len = wcslen(in_w) + 1;
@@ -98,10 +101,11 @@ int curl_win32_ascii_to_idn(const char *in, char **out)
     if(chars) {
       *out = Curl_convert_wchar_to_UTF8(unicode);
       if(*out)
-        ret = 1; /* success */
+        success = TRUE;
     }
   }
-  return ret;
+
+  return success;
 }
 
 #endif /* USE_WIN32_IDN */
index 218929d534a423d90b542cf5975fc971ae1fabfb..0894bae8b46734aa5affeedb8cf3646488acbe59 100644 (file)
--- a/lib/url.c
+++ b/lib/url.c
@@ -75,7 +75,7 @@ void idn_free (void *ptr);
 #endif
 #elif defined(USE_WIN32_IDN)
 /* prototype for curl_win32_idn_to_ascii() */
-int curl_win32_idn_to_ascii(const char *in, char **out);
+bool curl_win32_idn_to_ascii(const char *in, char **out);
 #endif  /* USE_LIBIDN */
 
 #include "urldata.h"
@@ -3803,15 +3803,14 @@ static void fix_hostname(struct SessionHandle *data,
    * Check name for non-ASCII and convert hostname to ACE form.
    *************************************************************/
     char *ace_hostname = NULL;
-    int rc = curl_win32_idn_to_ascii(host->name, &ace_hostname);
-    if(rc == 0)
-      infof(data, "Failed to convert %s to ACE;\n",
-            host->name);
-    else {
+
+    if(curl_win32_idn_to_ascii(host->name, &ace_hostname)) {
       host->encalloc = ace_hostname;
       /* change the name pointer to point to the encoded hostname */
       host->name = host->encalloc;
     }
+    else
+      infof(data, "Failed to convert %s to ACE;\n", host->name);
 #else
     infof(data, "IDN support not present, can't parse Unicode domains\n");
 #endif