https://git.reactos.org/?p=reactos.git;a=commitdiff;h=04eca8e2b21e6da084eea1...
commit 04eca8e2b21e6da084eea163372a2cbbadb753de Author: Hermès Bélusca-Maïto hermes.belusca-maito@reactos.org AuthorDate: Sat Apr 9 17:51:08 2022 +0200 Commit: Hermès Bélusca-Maïto hermes.belusca-maito@reactos.org CommitDate: Sat Apr 9 23:31:44 2022 +0200
[WIN32K] Remove incorrect packing specification around _TL, _WIN32THREAD and _THREADINFO structures. CORE-18140
This was introduced historically in commit 583de66b3 (r7460) to workaround some compiler problems (or replace already existing GCC-specific __attribute__((packed)) annotations); however these structures are in-memory-only, do not describe any on-disk data format and don't describe hardware-specific data. So they should have the "natural" alignment of the target platform.
They also have to match the documented layouts at: https://reactos.org/wiki/Techwiki:Win32k/THREADINFO https://www.geoffchappell.com/studies/windows/km/win32k/structs/threadinfo/i... at least for the compatible parts that ReactOS shares. --- win32ss/user/ntuser/win32.h | 3 --- 1 file changed, 3 deletions(-)
diff --git a/win32ss/user/ntuser/win32.h b/win32ss/user/ntuser/win32.h index 585a7191589..dd30cf23fc8 100644 --- a/win32ss/user/ntuser/win32.h +++ b/win32ss/user/ntuser/win32.h @@ -53,7 +53,6 @@ extern HANDLE hModuleWin; // This Win32k Instance. extern struct _CLS *SystemClassList; extern BOOL RegisteredSysClasses;
-#include <pshpack1.h> // FIXME: Move to ntuser.h typedef struct _TL { @@ -164,8 +163,6 @@ typedef struct _THREADINFO #endif // __cplusplus } THREADINFO;
-#include <poppack.h> -
#define IntReferenceThreadInfo(pti) \ InterlockedIncrement(&(pti)->RefCount)