Hi,
I've been testing some of these test extensively and can make them pass on all the windows versions I have running. Doing this however means it breaks the wine test.
An example is:
/* * string grows during expanding * dwSize is larger then the size of part before the backslash but smaller then the expanded string * if the unexpanded string fits into the buffer it can get cut when expanded */ strcpy(buf, sEmptyBuffer); dwSize = sExpLen2 - 4; dwType = -1; dwRet = SHQueryValueExA( hKey, "Test3", NULL, &dwType, buf, &dwSize); ok( (0 == strcmp("", buf)) | (0 == strcmp(sEnvvar2, buf)), "Buffer should be the first part of the string (win98) or empty otherwise, it's (%s)\n", buf);
Wine returns a part of the expanded string here: (ImARatherLongButIndeedNeededString\sub)
So Wine doesn't do what either win98/winnt/win2k/winxp does (all latest version of the OS's).
What's the best approach in this?
- fix Wine (but what should be the correct returned buffer?) - extend the ok, by the returned buffer that Wine gives and effectively ignore the differences.
Cheers,
Paul.