diff options
author | Steve Holme <steve_holme@hotmail.com> | 2016-03-11 07:24:39 +0000 |
---|---|---|
committer | Steve Holme <steve_holme@hotmail.com> | 2016-03-11 07:24:39 +0000 |
commit | 58e4a067430a8f9187155f50e117dc3150595dd5 (patch) | |
tree | 7deb66cb1f621d67c652ed8f5036862b4df0834f | |
parent | b0841739898ad458230382a9b3abab360130d233 (diff) | |
download | curl-58e4a067430a8f9187155f50e117dc3150595dd5.tar.gz |
idn_win32: Use boolean based success codes
Rather than use 0 and 1 integer base result codes use a FALSE / TRUE
based success code.
-rw-r--r-- | lib/idn_win32.c | 24 | ||||
-rw-r--r-- | lib/url.c | 11 |
2 files changed, 19 insertions, 16 deletions
diff --git a/lib/idn_win32.c b/lib/idn_win32.c index 8b5baf73b..8dc300b36 100644 --- a/lib/idn_win32.c +++ b/lib/idn_win32.c @@ -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 */ @@ -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 |