Puetz Kevin A : atlbase.h: Fix some declarations on win64.

Alexandre Julliard julliard at winehq.org
Tue Feb 4 15:33:19 CST 2020


Module: wine
Branch: master
Commit: 3043ab3e62772ddef8e4e27674bf4178e0ee50c9
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=3043ab3e62772ddef8e4e27674bf4178e0ee50c9

Author: Puetz Kevin A <PuetzKevinA at JohnDeere.com>
Date:   Mon Feb  3 22:06:49 2020 +0100

atlbase.h: Fix some declarations on win64.

Signed-off-by: Jacek Caban <jacek at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/atl/atl.c          |  2 +-
 dlls/atl/tests/module.c | 25 ++++++++++++++-----------
 include/atlbase.h       |  8 ++++----
 3 files changed, 19 insertions(+), 16 deletions(-)

diff --git a/dlls/atl/atl.c b/dlls/atl/atl.c
index 8829987c6a..358986d7a4 100644
--- a/dlls/atl/atl.c
+++ b/dlls/atl/atl.c
@@ -213,7 +213,7 @@ HRESULT WINAPI AtlInternalQueryInterface(void* this, const _ATL_INTMAP_ENTRY* pE
 
     while (pEntries[i].pFunc != 0)
     {
-        TRACE("Trying entry %i (%s %i %p)\n",i,debugstr_guid(pEntries[i].piid),
+        TRACE("Trying entry %i (%s %lx %p)\n",i,debugstr_guid(pEntries[i].piid),
               pEntries[i].dw, pEntries[i].pFunc);
 
         if (!pEntries[i].piid || IsEqualGUID(iid,pEntries[i].piid))
diff --git a/dlls/atl/tests/module.c b/dlls/atl/tests/module.c
index 192b23ef1e..6250f9b2cb 100644
--- a/dlls/atl/tests/module.c
+++ b/dlls/atl/tests/module.c
@@ -113,9 +113,9 @@ static void test_winmodule(void)
     ok(winmod.m_pCreateWndList == create_data+1, "winmod.m_pCreateWndList != create_data\n");
 }
 
-static DWORD cb_val;
+static DWORD_PTR cb_val;
 
-static void WINAPI term_callback(DWORD dw)
+static void WINAPI term_callback(DWORD_PTR dw)
 {
     cb_val = dw;
 }
@@ -123,33 +123,36 @@ static void WINAPI term_callback(DWORD dw)
 static void test_term(void)
 {
     _ATL_MODULEW test;
+    ULONG_PTR ex;
     HRESULT hres;
 
+    ex = (ULONG_PTR)-37;
+
     test.cbSize = sizeof(_ATL_MODULEW);
 
     hres = AtlModuleInit(&test, NULL, NULL);
-    ok (hres == S_OK, "AtlModuleInit failed (0x%x).\n", (int)hres);
+    ok (hres == S_OK, "AtlModuleInit failed (0x%x).\n", hres);
 
-    hres = AtlModuleAddTermFunc(&test, term_callback, 0x22);
-    ok (hres == S_OK, "AtlModuleAddTermFunc failed (0x%x).\n", (int)hres);
+    hres = AtlModuleAddTermFunc(&test, term_callback, ex);
+    ok (hres == S_OK, "AtlModuleAddTermFunc failed (0x%x).\n", hres);
 
     cb_val = 0xdeadbeef;
     hres = AtlModuleTerm(&test);
-    ok (hres == S_OK, "AtlModuleTerm failed (0x%x).\n", (int)hres);
-    ok (cb_val == 0x22, "wrong callback value (0x%x).\n", (int)cb_val);
+    ok (hres == S_OK, "AtlModuleTerm failed (0x%x).\n", hres);
+    ok (cb_val == ex, "wrong callback value (0x%lx).\n", cb_val);
 
     test.cbSize = FIELD_OFFSET(_ATL_MODULEW, dwAtlBuildVer);
 
     hres = AtlModuleInit(&test, NULL, NULL);
-    ok (hres == S_OK, "AtlModuleInit failed (0x%x).\n", (int)hres);
+    ok (hres == S_OK, "AtlModuleInit failed (0x%x).\n", hres);
 
     hres = AtlModuleAddTermFunc(&test, term_callback, 0x23);
-    ok (hres == S_OK, "AtlModuleAddTermFunc failed (0x%x).\n", (int)hres);
+    ok (hres == S_OK, "AtlModuleAddTermFunc failed (0x%x).\n", hres);
 
     cb_val = 0xdeadbeef;
     hres = AtlModuleTerm(&test);
-    ok (hres == S_OK, "AtlModuleTerm failed (0x%x).\n", (int)hres);
-    ok (cb_val == 0xdeadbeef, "wrong callback value (0x%x).\n", (int)cb_val);
+    ok (hres == S_OK, "AtlModuleTerm failed (0x%x).\n", hres);
+    ok (cb_val == 0xdeadbeef, "wrong callback value (0x%lx).\n", cb_val);
 }
 
 START_TEST(module)
diff --git a/include/atlbase.h b/include/atlbase.h
index b8c4f65651..ebf1674805 100644
--- a/include/atlbase.h
+++ b/include/atlbase.h
@@ -37,12 +37,12 @@
 #endif
 
 typedef HRESULT (WINAPI _ATL_CREATORFUNC)(void* pv, REFIID riid, LPVOID* ppv);
-typedef HRESULT (WINAPI _ATL_CREATORARGFUNC)(void* pv, REFIID riid, LPVOID* ppv, DWORD dw);
-typedef HRESULT (WINAPI _ATL_MODULEFUNC)(DWORD dw);
+typedef HRESULT (WINAPI _ATL_CREATORARGFUNC)(void* pv, REFIID riid, LPVOID* ppv, DWORD_PTR dw);
+typedef HRESULT (WINAPI _ATL_MODULEFUNC)(DWORD_PTR dw);
 typedef LPCSTR (WINAPI _ATL_DESCRIPTIONFUNCA)(void);
 typedef LPCWSTR (WINAPI _ATL_DESCRIPTIONFUNCW)(void);
 typedef const struct _ATL_CATMAP_ENTRY* (_ATL_CATMAPFUNC)(void);
-typedef void (WINAPI _ATL_TERMFUNC)(DWORD dw);
+typedef void (WINAPI _ATL_TERMFUNC)(DWORD_PTR dw);
 
 typedef CRITICAL_SECTION CComCriticalSection;
 
@@ -234,7 +234,7 @@ typedef _ATL_MODULEW _ATL_WIN_MODULE;
 typedef struct _ATL_INTMAP_ENTRY_TAG
 {
     const IID* piid;
-    DWORD dw;
+    DWORD_PTR dw;
     _ATL_CREATORARGFUNC* pFunc;
 } _ATL_INTMAP_ENTRY;
 




More information about the wine-cvs mailing list