Fix crashing browsing namespace with non-zero-terminated UNICODE_STRING.
authorMike Nordell <tamlin@algonet.se>
Fri, 21 Jan 2005 02:34:33 +0000 (02:34 +0000)
committerMike Nordell <tamlin@algonet.se>
Fri, 21 Jan 2005 02:34:33 +0000 (02:34 +0000)
svn path=/trunk/; revision=13177

reactos/subsys/system/explorer/shell/ntobjfs.cpp

index 286a8f8..f7e86a0 100644 (file)
@@ -227,6 +227,16 @@ void NtObjDirectory::read_directory(int scan_flags)
                        memset(&w32fd, 0, sizeof(WIN32_FIND_DATA));
 
 #ifdef UNICODE
+                       if (info->name.string_ptr) {
+                               info->name.string_ptr[info->name.string_len / sizeof(WCHAR)] = 0;
+                       } else {
+                               info->name.string_ptr = TEXT("");
+                       }
+                       if (info->type.string_ptr) {
+                               info->type.string_ptr[info->type.string_len / sizeof(WCHAR)] = 0;
+                       } else {
+                               info->type.string_ptr = TEXT("");
+                       }
                        wcscpyn(p, info->name.string_ptr, _MAX_PATH);
 #else
                        WideCharToMultiByte(CP_ACP, 0, info->name.string_ptr, info->name.string_len, p, MAX_PATH, 0, 0);