diff --git a/reactos/include/reactos/probe.h b/reactos/include/reactos/probe.h index 4a13cd7968b..9ae2d37603d 100644 --- a/reactos/include/reactos/probe.h +++ b/reactos/include/reactos/probe.h @@ -152,7 +152,7 @@ ProbeAndCaptureUnicodeString(OUT PUNICODE_STRING Dest, IN const UNICODE_STRING *UnsafeSrc) { NTSTATUS Status = STATUS_SUCCESS; - WCHAR *Buffer = NULL; + WCHAR * volatile Buffer = NULL; ASSERT(Dest != NULL); /* Probe the structure and buffer*/ diff --git a/reactos/ntoskrnl/ex/harderr.c b/reactos/ntoskrnl/ex/harderr.c index 084295a1d27..509855645ae 100644 --- a/reactos/ntoskrnl/ex/harderr.c +++ b/reactos/ntoskrnl/ex/harderr.c @@ -529,7 +529,7 @@ NtRaiseHardError(IN NTSTATUS ErrorStatus, OUT PULONG Response) { NTSTATUS Status = STATUS_SUCCESS; - PULONG_PTR SafeParams = NULL; + volatile PULONG_PTR SafeParams = NULL; ULONG SafeResponse; UNICODE_STRING SafeString; ULONG i; diff --git a/reactos/ntoskrnl/ex/sysinfo.c b/reactos/ntoskrnl/ex/sysinfo.c index 278ecb97c85..aef7c72c549 100644 --- a/reactos/ntoskrnl/ex/sysinfo.c +++ b/reactos/ntoskrnl/ex/sysinfo.c @@ -225,7 +225,7 @@ NtQuerySystemEnvironmentValue(IN PUNICODE_STRING VariableName, UNICODE_STRING WName; ARC_STATUS Result; PCH Value; - ANSI_STRING AValue; + volatile ANSI_STRING AValue; UNICODE_STRING WValue; KPROCESSOR_MODE PreviousMode; NTSTATUS Status = STATUS_SUCCESS; @@ -703,11 +703,12 @@ QSI_DEF(SystemProcessInformation) { PSYSTEM_PROCESS_INFORMATION SpiCurrent; PSYSTEM_THREAD_INFORMATION ThreadInfo; - PEPROCESS Process = NULL, SystemProcess; + volatile PEPROCESS Process = NULL; + PEPROCESS SystemProcess; PETHREAD CurrentThread; ANSI_STRING ImageName; int CurrentSize, ImageNameLength = 32; // image name len in bytes - PLIST_ENTRY CurrentEntry; + PLIST_ENTRY CurrentEntry; ULONG TotalSize = 0, ThreadsCount; ULONG TotalUser, TotalKernel; PUCHAR Current; diff --git a/reactos/ntoskrnl/ob/oblife.c b/reactos/ntoskrnl/ob/oblife.c index a7153d42942..5a53d48fa80 100644 --- a/reactos/ntoskrnl/ob/oblife.c +++ b/reactos/ntoskrnl/ob/oblife.c @@ -360,7 +360,7 @@ ObpCaptureObjectName(IN OUT PUNICODE_STRING CapturedName, { NTSTATUS Status = STATUS_SUCCESS; ULONG StringLength; - PWCHAR StringBuffer = NULL; + volatile PWCHAR StringBuffer = NULL; UNICODE_STRING LocalName; PAGED_CODE(); @@ -440,7 +440,7 @@ ObpCaptureObjectCreateInformation(IN POBJECT_ATTRIBUTES ObjectAttributes, NTSTATUS Status = STATUS_SUCCESS; PSECURITY_DESCRIPTOR SecurityDescriptor; PSECURITY_QUALITY_OF_SERVICE SecurityQos; - PUNICODE_STRING LocalObjectName = NULL; + volatile PUNICODE_STRING LocalObjectName = NULL; PAGED_CODE(); /* Zero out the Capture Data */ @@ -1258,14 +1258,14 @@ ObpDeleteObjectType(IN PVOID Object) { ULONG i; POBJECT_TYPE ObjectType = (PVOID)Object; - + /* Loop our locks */ for (i = 0; i < 4; i++) { /* Delete each one */ ExDeleteResourceLite(&ObjectType->ObjectLocks[i]); } - + /* Delete our main mutex */ ExDeleteResourceLite(&ObjectType->Mutex); } @@ -1413,7 +1413,7 @@ NtQueryObject(IN HANDLE ObjectHandle, POBJECT_HANDLE_ATTRIBUTE_INFORMATION HandleFlags; POBJECT_BASIC_INFORMATION BasicInfo; ULONG InfoLength; - PVOID Object = NULL; + volatile PVOID Object = NULL; NTSTATUS Status = STATUS_SUCCESS; KPROCESSOR_MODE PreviousMode = ExGetPreviousMode(); PAGED_CODE();