[WIN32K:NTGDI] Fix more uses of RtlCreateUnicodeString. CORE-14271
authorThomas Faber <thomas.faber@reactos.org>
Wed, 31 Jan 2018 11:34:41 +0000 (12:34 +0100)
committerThomas Faber <thomas.faber@reactos.org>
Wed, 31 Jan 2018 11:35:30 +0000 (12:35 +0100)
Addendum to 7f687154a0fe47826d8047f1a4f9cfd93414d45f. Spotted by Herm├Ęs.

win32ss/gdi/ntgdi/freetype.c

index 7f24ba9..392e338 100644 (file)
@@ -391,10 +391,11 @@ IntLoadFontSubstList(PLIST_ENTRY pHead)
         pch = (LPWSTR)((PUCHAR)pInfo + pInfo->DataOffset);
         Length = pInfo->DataLength / sizeof(WCHAR);
         pch[Length] = UNICODE_NULL; /* truncate */
-        Status = RtlCreateUnicodeString(&ToW, pch);
-        if (!NT_SUCCESS(Status))
+        Success = RtlCreateUnicodeString(&ToW, pch);
+        if (!Success)
         {
-            DPRINT("RtlCreateUnicodeString failed: 0x%08X\n", Status);
+            Status = STATUS_INSUFFICIENT_RESOURCES;
+            DPRINT("RtlCreateUnicodeString failed\n");
             RtlFreeUnicodeString(&FromW);
             break;      /* failure */
         }
@@ -2193,7 +2194,14 @@ IntGetFontLocalizedName(PUNICODE_STRING pNameW, PSHARED_FACE SharedFace,
             /* Convert UTF-16 big endian to little endian */
             SwapEndian(Buf, Name.string_len);
 
-            Status = RtlCreateUnicodeString(pNameW, Buf);
+            if (RtlCreateUnicodeString(pNameW, Buf))
+            {
+                Status = STATUS_SUCCESS;
+            }
+            else
+            {
+                Status = STATUS_INSUFFICIENT_RESOURCES;
+            }
         }
     }