summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNikos Mavrogiannopoulos <nmav@gnutls.org>2012-11-19 21:40:20 +0100
committerNikos Mavrogiannopoulos <nmav@gnutls.org>2012-11-19 21:40:27 +0100
commita45fa2c779624a21ac99612c36f18f50f2d3f724 (patch)
treea5b0e1e00bd83edbb87e62aae406939af1c3f21a
parentb8c2738c4ca0d4724a459f69ae519fd37c77d490 (diff)
downloadgnutls-a45fa2c779624a21ac99612c36f18f50f2d3f724.tar.gz
corrected win32 UCS2 conversion.
-rw-r--r--lib/system.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/lib/system.c b/lib/system.c
index cbb0e567ba..dcca1450c1 100644
--- a/lib/system.c
+++ b/lib/system.c
@@ -520,12 +520,13 @@ cleanup:
return ret;
}
#elif defined(_WIN32)
-#include <Winnls.h>
+#include <winnls.h>
/* Can convert only english */
int _gnutls_ucs2_to_utf8(const void* data, size_t size, gnutls_datum_t *output)
{
int ret;
+unsigned i;
int len = 0, src_len;
char* dst = NULL;
char* src = NULL;
@@ -543,7 +544,7 @@ char* src = NULL;
src[1+i] = ((char*)data)[i];
}
- ret = WideCharToMultiByte(CP_UTF8, MB_ERR_INVALID_CHARS, src, src_len,
+ ret = WideCharToMultiByte(CP_UTF8, MB_ERR_INVALID_CHARS, (void*)src, src_len,
NULL, 0, NULL, NULL);
if (ret == 0)
{
@@ -559,7 +560,7 @@ char* src = NULL;
goto fail;
}
- ret = WideCharToMultiByte(CP_UTF8, MB_ERR_INVALID_CHARS, data, size/2,
+ ret = WideCharToMultiByte(CP_UTF8, MB_ERR_INVALID_CHARS, (void*)src, src_len,
dst, len, NULL, NULL);
if (ret == 0)
{