https://git.reactos.org/?p=reactos.git;a=commitdiff;h=7cb411e88fa68419c2cce8a3eb544945bd4af095

commit 7cb411e88fa68419c2cce8a3eb544945bd4af095
Author:     Hermès Bélusca-Maïto <[email protected]>
AuthorDate: Sat Jun 9 15:37:54 2018 +0200
Commit:     Hermès Bélusca-Maïto <[email protected]>
CommitDate: Sat Jun 9 15:37:54 2018 +0200

    [USERSRV] HardError: Free WindowTitleU buffer only if we really allocated 
it.
---
 win32ss/user/winsrv/usersrv/harderror.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/win32ss/user/winsrv/usersrv/harderror.c 
b/win32ss/user/winsrv/usersrv/harderror.c
index 7cc3a67ca4..85ef9fe23d 100644
--- a/win32ss/user/winsrv/usersrv/harderror.c
+++ b/win32ss/user/winsrv/usersrv/harderror.c
@@ -641,8 +641,10 @@ UserpFormatMessages(
     CaptionStringU->Length = (USHORT)(wcslen(CaptionStringU->Buffer) * 
sizeof(WCHAR));
 
     /* Free the strings if needed */
-    if (WindowTitleU.Buffer) RtlFreeUnicodeString(&WindowTitleU);
-    if (hProcess) RtlFreeUnicodeString(&FileNameU);
+    if (WindowTitleU.Buffer && (WindowTitleU.MaximumLength != 0))
+        RtlFreeUnicodeString(&WindowTitleU);
+    if (hProcess)
+        RtlFreeUnicodeString(&FileNameU);
 
     Format2A.Buffer = NULL;
 

Reply via email to