changeset 17:78baaad4a001

Further check in char conversion
author Chris Cannam
date Fri, 28 Oct 2016 14:32:30 +0100
parents 51229bd6c24b
children 7eff522b23ae
files src/helper.cpp
diffstat 1 files changed, 5 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/helper.cpp	Fri Oct 28 12:10:54 2016 +0100
+++ b/src/helper.cpp	Fri Oct 28 14:32:30 2016 +0100
@@ -85,8 +85,12 @@
         0, NULL );
     int wn = wcslen(buffer);
     int n = WideCharToMultiByte(CP_UTF8, 0, buffer, wn, 0, 0, 0, 0);
+    if (n < 0) {
+        LocalFree(&buffer);
+        return "Unable to convert error string (internal error)";
+    }
     char *text = new char[n+1];
-    n = WideCharToMultiByte(CP_UTF8, 0, buffer, wn, text, n, 0, 0);
+    (void)WideCharToMultiByte(CP_UTF8, 0, buffer, wn, text, n, 0, 0);
     text[n] = '\0';
     std::string s(text);
     LocalFree(&buffer);