[win32csr]
[reactos.git] / reactos / subsystems / win32 / csrss / win32csr / harderror.c
index 0e10aad..ee195f7 100644 (file)
@@ -118,7 +118,7 @@ CsrpCaptureStringParameters(
     ULONG nParam, UnicodeStringParameterMask, Size = 0;
     NTSTATUS Status;
     UNICODE_STRING TempStringU;
-    PWSTR ParamString;
+    CHAR *ParamString;
 
     UnicodeStringParameterMask = HardErrorMessage->UnicodeStringParameterMask;
 
@@ -166,7 +166,8 @@ CsrpCaptureStringParameters(
             }
 
             /* Zero terminate the string */
-            ParamString[TempStringU.Length / sizeof(WCHAR)] = 0;
+            ParamString[TempStringU.Length] = 0;
+            ParamString[TempStringU.Length + 1] = 0;
             DPRINT("ParamString=\'%S\'\n", ParamString);
 
             Parameters[nParam] = (ULONG_PTR)ParamString;
@@ -221,7 +222,7 @@ CsrpFormatMessages(
     NTSTATUS Status;
     UNICODE_STRING FileNameU, TempStringU, FormatU;
     ANSI_STRING FormatA;
-    PRTL_MESSAGE_RESOURCE_ENTRY MessageResource;
+    PMESSAGE_RESOURCE_ENTRY MessageResource;
     PWSTR FormatString;
     ULONG Size, ExceptionCode;
 
@@ -251,7 +252,7 @@ CsrpFormatMessages(
         }
         else
         {
-            RtlInitAnsiString(&FormatA, MessageResource->Text);
+            RtlInitAnsiString(&FormatA, (PCHAR)MessageResource->Text);
             RtlAnsiStringToUnicodeString(&FormatU, &FormatA, TRUE);
         }
     }
@@ -355,7 +356,7 @@ CsrpFormatMessages(
                 }
                 else
                 {
-                    RtlInitAnsiString(&FormatA, MessageResource->Text);
+                    RtlInitAnsiString(&FormatA, (PCHAR)MessageResource->Text);
                     RtlAnsiStringToUnicodeString(&FormatU, &FormatA, TRUE);
                 }
                 FormatString = FormatU.Buffer;
@@ -383,13 +384,12 @@ CsrpFormatMessages(
     {
         /* Print the string into the buffer */
         StringCbPrintfW(TextStringU->Buffer,
-        TextStringU->MaximumLength,
-        FormatString,
-        Parameters[0],
-        Parameters[1],
-        Parameters[2],
-        Parameters[3],
-        Parameters[4]);
+                        TextStringU->MaximumLength,
+                        FormatString,
+                        Parameters[0],
+                        Parameters[1],
+                        Parameters[2],
+                        Parameters[3]);
         Status = STATUS_SUCCESS;
     }
     _SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER)