[KERNEL32]
authorThomas Faber <thomas.faber@reactos.org>
Mon, 10 Oct 2011 12:14:12 +0000 (12:14 +0000)
committerThomas Faber <thomas.faber@reactos.org>
Mon, 10 Oct 2011 12:14:12 +0000 (12:14 +0000)
- Properly copy image name in TH32CreateSnapshotSectionInitialize. Fixes truncated file names in kernel32:toolhelp test

svn path=/trunk/; revision=54071

reactos/dll/win32/kernel32/client/toolhelp.c

index ca2f558..0487726 100644 (file)
@@ -409,9 +409,12 @@ TH32CreateSnapshotSectionInitialize(DWORD dwFlags,
       ProcessListEntry->dwFlags = 0; /* no longer used */
       if(ProcessInfo->ImageName.Buffer != NULL)
       {
       ProcessListEntry->dwFlags = 0; /* no longer used */
       if(ProcessInfo->ImageName.Buffer != NULL)
       {
-        lstrcpynW(ProcessListEntry->szExeFile,
-                  ProcessInfo->ImageName.Buffer,
-                  min(ProcessInfo->ImageName.Length / sizeof(WCHAR), sizeof(ProcessListEntry->szExeFile) / sizeof(ProcessListEntry->szExeFile[0])));
+        ULONG ExeFileLength = min(ProcessInfo->ImageName.Length,
+                                  sizeof(ProcessListEntry->szExeFile) - sizeof(WCHAR));
+        RtlCopyMemory(ProcessListEntry->szExeFile,
+                      ProcessInfo->ImageName.Buffer,
+                      ExeFileLength);
+        ProcessListEntry->szExeFile[ExeFileLength / sizeof(WCHAR)] = UNICODE_NULL;
       }
       else
       {
       }
       else
       {