[PATCH] atl: fixed second buffer size to MBtoWC

Marcus Meissner marcus at jet.franken.de
Wed Feb 4 13:33:40 CST 2009


Hi,

second buffer size must not be -1, either 0
or real length.

Ciao, Marcus
---
 dlls/atl/registrar.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/dlls/atl/registrar.c b/dlls/atl/registrar.c
index d3ca9b0..b2efda9 100644
--- a/dlls/atl/registrar.c
+++ b/dlls/atl/registrar.c
@@ -444,7 +444,7 @@ static HRESULT resource_register(Registrar *This, LPCOLESTR resFileName,
             if(regstra) {
                 len = MultiByteToWideChar(CP_ACP, 0, regstra, reslen, NULL, 0)+1;
                 regstrw = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, len*sizeof(WCHAR));
-                MultiByteToWideChar(CP_ACP, 0, regstra, reslen, regstrw, -1);
+                MultiByteToWideChar(CP_ACP, 0, regstra, reslen, regstrw, len);
                 regstrw[len-1] = '\0';
 
                 hres = string_register(This, regstrw, do_register);
@@ -484,7 +484,7 @@ static HRESULT file_register(Registrar *This, LPCOLESTR fileName, BOOL do_regist
         if(lres == ERROR_SUCCESS) {
             len = MultiByteToWideChar(CP_ACP, 0, regstra, filelen, NULL, 0)+1;
             regstrw = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, len*sizeof(WCHAR));
-            MultiByteToWideChar(CP_ACP, 0, regstra, filelen, regstrw, -1);
+            MultiByteToWideChar(CP_ACP, 0, regstra, filelen, regstrw, len);
             regstrw[len-1] = '\0';
             
             hres = string_register(This, regstrw, do_register);
-- 
1.5.6



More information about the wine-patches mailing list