gives extra work to RtlUnicodeStringToAnsiString, but spares us an
RtlInitUnicodeString round
*/
- sizeof(((LPOSVERSIONINFOW)NULL)->szCSDVersion) *
- sizeof(((LPOSVERSIONINFOW)NULL)->szCSDVersion[0]) -
- 1,
- sizeof(((LPOSVERSIONINFOW)NULL)->szCSDVersion) *
- sizeof(((LPOSVERSIONINFOW)NULL)->szCSDVersion[0]),
+ 0,
+ sizeof(((LPOSVERSIONINFOW)NULL)->szCSDVersion),
oviVerInfo.szCSDVersion
};
ANSI_STRING strVerStr =
{
0,
- sizeof(((LPOSVERSIONINFOA)NULL)->szCSDVersion) *
- sizeof(((LPOSVERSIONINFOA)NULL)->szCSDVersion[0]) -
- 1,
+ sizeof(((LPOSVERSIONINFOA)NULL)->szCSDVersion),
lpVersionInformation->szCSDVersion
};
/* null-terminate, just in case */
oviVerInfo.szCSDVersion
[
- sizeof(((LPOSVERSIONINFOW)NULL)->szCSDVersion) *
+ sizeof(((LPOSVERSIONINFOW)NULL)->szCSDVersion) /
sizeof(((LPOSVERSIONINFOW)NULL)->szCSDVersion[0]) -
1
] = 0;
+ wstrVerStr.Length = wcslen(wstrVerStr.Buffer) * sizeof(WCHAR);
/* convert the version string */
nErrCode = RtlUnicodeStringToAnsiString(&strVerStr, &wstrVerStr, FALSE);