https://git.reactos.org/?p=reactos.git;a=commitdiff;h=9b6fb9f2f8f5021ab68b8c...
commit 9b6fb9f2f8f5021ab68b8c2495949d6cc47d7adf Author: Mark Jansen mark.jansen@reactos.org AuthorDate: Sun Jul 29 19:45:13 2018 +0200 Commit: Mark Jansen mark.jansen@reactos.org CommitDate: Mon Aug 13 13:24:12 2018 +0200
[RTL][KERNEL32] Add a comment indicating we need SEH in RtlImageNtHeaderEx CORE-14532 CORE-14857 --- dll/win32/kernel32/client/loader.c | 1 + modules/rostests/apitests/ntdll/load_notifications.c | 2 +- sdk/lib/rtl/image.c | 1 + 3 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/dll/win32/kernel32/client/loader.c b/dll/win32/kernel32/client/loader.c index a6f84ba87e..817f1019b9 100644 --- a/dll/win32/kernel32/client/loader.c +++ b/dll/win32/kernel32/client/loader.c @@ -463,6 +463,7 @@ FreeLibrary(HINSTANCE hLibModule) if (LDR_IS_DATAFILE(hLibModule)) { // FIXME: This SEH should go inside RtlImageNtHeader instead + // See https://jira.reactos.org/browse/CORE-14857 _SEH2_TRY { /* This is a LOAD_LIBRARY_AS_DATAFILE module, check if it's a valid one */ diff --git a/modules/rostests/apitests/ntdll/load_notifications.c b/modules/rostests/apitests/ntdll/load_notifications.c index 430e2fc5cb..8543f2f478 100644 --- a/modules/rostests/apitests/ntdll/load_notifications.c +++ b/modules/rostests/apitests/ntdll/load_notifications.c @@ -72,7 +72,7 @@ BOOL WINAPI notify_DllMain(IN HINSTANCE hDllHandle, IN DWORD dwReason, IN LPVOID } else { - ok_int(handlers, g_DLL_DETACH); + ok_int(handlers, g_DLL_DETACH); // For failures, see https://jira.reactos.org/browse/CORE-14857 }
if (InterlockedCompareExchange(&g_DllMainExcept, 0xffffff, dwReason) == dwReason) diff --git a/sdk/lib/rtl/image.c b/sdk/lib/rtl/image.c index c7815b00e4..5629c775fd 100644 --- a/sdk/lib/rtl/image.c +++ b/sdk/lib/rtl/image.c @@ -134,6 +134,7 @@ LdrVerifyMappedImageMatchesChecksum(
/* * @implemented + * @note This needs SEH (See https://jira.reactos.org/browse/CORE-14857) */ NTSTATUS NTAPI