bugfix: UNICODE_STRING objects are not null-terminated by default, but LoadLibraryW...
authorRoyce Mitchell III <royce3@ev1.net>
Wed, 6 Aug 2003 22:05:46 +0000 (22:05 +0000)
committerRoyce Mitchell III <royce3@ev1.net>
Wed, 6 Aug 2003 22:05:46 +0000 (22:05 +0000)
svn path=/trunk/; revision=5444

reactos/lib/ws2_32/misc/catalog.c

index ef077be..29e6cdc 100644 (file)
@@ -191,9 +191,14 @@ INT LoadProvider(
   WS_DbgPrint(MAX_TRACE, ("Loading provider at (0x%X)  Name (%wZ).\n",
     Provider, &Provider->LibraryName));
 
-  if (Provider->hModule == INVALID_HANDLE_VALUE) {
-    /* DLL is not loaded so load it now */
-    Provider->hModule = LoadLibrary(Provider->LibraryName.Buffer);
+  if (Provider->hModule == INVALID_HANDLE_VALUE)
+  {
+    /* DLL is not loaded so load it now
+     * UNICODE_STRING objects are not null-terminated, but LoadLibraryW
+     * expects a null-terminated string
+     */
+    Provider->LibraryName.Buffer[Provider->LibraryName.Length] = L'\0';
+    Provider->hModule = LoadLibraryW(Provider->LibraryName.Buffer);
     if (Provider->hModule != INVALID_HANDLE_VALUE) {
       Provider->WSPStartup = (LPWSPSTARTUP)GetProcAddress(
         Provider->hModule,