Buffer length fix, more trace info - dlls/kernel/tests/environ.c
Jakob Eriksson
jakov at vmlinux.org
Tue Mar 15 10:58:00 CST 2005
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/sysinfo/base/expandenvironmentstrings.asp
:
Quoting from page above:
"When using ANSI strings, the buffer size should be the string length,
plus terminating null character, plus one."
Whe also need to know why it fails on Windows 98...
http://test.winehq.org/data/200503151000/98_jmelgarejo98casa/kernel32:environ.txt
so I added more output in the ok().
/Jakob
-------------- next part --------------
Index: dlls/kernel/tests/environ.c
===================================================================
RCS file: /home/wine/wine/dlls/kernel/tests/environ.c,v
retrieving revision 1.8
diff -u -r1.8 environ.c
--- dlls/kernel/tests/environ.c 10 Mar 2005 17:15:39 -0000 1.8
+++ dlls/kernel/tests/environ.c 15 Mar 2005 16:57:00 -0000
@@ -215,11 +215,14 @@
{
char buf[256], buf1[256];
DWORD ret_size, ret_size1;
+ int error;
ret_size1 = GetWindowsDirectoryA(buf1,256);
ok ((ret_size1 >0) && (ret_size1<256), "GetWindowsDirectory Failed\n");
- ret_size = ExpandEnvironmentStringsA("%SystemRoot%",buf,256);
- ok(!strcmp(buf, buf1), "ExpandEnvironmentStrings failed %s vs %s\n", buf, buf1);
+ ret_size = ExpandEnvironmentStringsA("%SystemRoot%",buf,sizeof(buf)-2);
+ error = GetLastError();
+ ok(!strcmp(buf, buf1),
+ "ExpandEnvironmentStrings failed %s vs %s. GetLastError() == %d, ret_size = %d\n", buf, buf1, error, ret_size);
}
More information about the wine-patches
mailing list