[XDK] Fix KWAIT_BLOCK definition for Win8+
authorTimo Kreuzer <timo@reactos.org>
Wed, 16 Aug 2017 06:34:47 +0000 (08:34 +0200)
committerTimo Kreuzer <timo.kreuzer@reactos.org>
Sun, 8 Oct 2017 16:11:07 +0000 (18:11 +0200)
sdk/include/xdk/ketypes.h

index 710fd70..5e276c0 100644 (file)
@@ -442,6 +442,20 @@ typedef enum _KWAIT_REASON {
 
 typedef struct _KWAIT_BLOCK {
   LIST_ENTRY WaitListEntry;
+#if (NTDDI_VERSION >= NTDDI_WIN8)
+  UCHAR WaitType;
+  volatile UCHAR BlockState;
+  USHORT WaitKey;
+#ifdef _WIN64
+  LONG SpareLong;
+#endif
+  union {
+    struct _KTHREAD *Thread;
+    struct _KQUEUE *NotificationQueue;
+  };
+  PVOID Object;
+  PVOID SparePtr;
+#else
   struct _KTHREAD *Thread;
   PVOID Object;
   struct _KWAIT_BLOCK *NextWaitBlock;
@@ -455,6 +469,7 @@ typedef struct _KWAIT_BLOCK {
 #if defined(_WIN64)
   LONG SpareLong;
 #endif
+#endif
 } KWAIT_BLOCK, *PKWAIT_BLOCK, *PRKWAIT_BLOCK;
 
 typedef enum _KINTERRUPT_MODE {