https://git.reactos.org/?p=reactos.git;a=commitdiff;h=522e9f6dd34d2934b328041580844b0f4e03969f

commit 522e9f6dd34d2934b328041580844b0f4e03969f
Author:     Victor Perevertkin <[email protected]>
AuthorDate: Tue Apr 26 02:37:07 2022 +0300
Commit:     Victor Perevertkin <[email protected]>
CommitDate: Tue Apr 26 03:38:37 2022 +0300

    [DBGHELP_APITEST][SDK_APITEST] Fix initializing global variables
---
 modules/rostests/apitests/dbghelp/pdb.c    | 9 +++++----
 modules/rostests/apitests/sdk/delayimp.cpp | 3 ++-
 2 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/modules/rostests/apitests/dbghelp/pdb.c 
b/modules/rostests/apitests/dbghelp/pdb.c
index 68aab4942bb..e36a1b8fee5 100644
--- a/modules/rostests/apitests/dbghelp/pdb.c
+++ b/modules/rostests/apitests/dbghelp/pdb.c
@@ -15,6 +15,8 @@
 
 #include "wine/test.h"
 
+extern PfnDliHook __pfnDliFailureHook2;
+
 #define ok_ulonglong(expression, result) \
     do { \
         ULONG64 _value = (expression); \
@@ -217,10 +219,6 @@ FARPROC WINAPI DliFailHook(unsigned dliNotify, 
PDelayLoadInfo pdli)
     return NULL;
 }
 
-/* Register the failure hook using the magic name '__pfnDliFailureHook2'. */
-PfnDliHook __pfnDliFailureHook2 = DliFailHook;
-
-
 /* Maybe our dbghelp.dll is too old? */
 static BOOL supports_pdb(HANDLE hProc, DWORD64 BaseAddress)
 {
@@ -582,6 +580,9 @@ START_TEST(pdb)
 
     init_dbghelp_version();
 
+    /* Register the failure hook using the magic name '__pfnDliFailureHook2'. 
*/
+    __pfnDliFailureHook2 = DliFailHook;
+
     if (init_sym(FALSE))
     {
         SetLastError(ERROR_SUCCESS);
diff --git a/modules/rostests/apitests/sdk/delayimp.cpp 
b/modules/rostests/apitests/sdk/delayimp.cpp
index 7073f001932..bad395e4f4e 100644
--- a/modules/rostests/apitests/sdk/delayimp.cpp
+++ b/modules/rostests/apitests/sdk/delayimp.cpp
@@ -369,7 +369,7 @@ LONG ExceptionFilter(IN PEXCEPTION_POINTERS ExceptionInfo, 
ULONG ExceptionCode)
 so that we can check that both fallback and registration work*/
 extern "C"
 {
-    PfnDliHook __pfnDliNotifyHook2 = DliHook;
+    extern PfnDliHook __pfnDliNotifyHook2;
     //PfnDliHook __pfnDliFailureHook2 = DliFailHook;
 }
 
@@ -401,6 +401,7 @@ unsigned g_imagehlp[] = { dliStartProcessing, 
dliNotePreLoadLibrary, dliFailLoad
 //#define DELAYLOAD_SUPPORTS_UNLOADING
 START_TEST(delayimp)
 {
+    __pfnDliNotifyHook2 = DliHook;
     /* Verify that both scenario's work */
     ok(__pfnDliNotifyHook2 == DliHook, "Expected __pfnDliNotifyHook2 to be 
DliHook(%p), but was: %p\n",
         DliHook, __pfnDliNotifyHook2);

Reply via email to