The Data1 member of the GUID struct needs to be an unsigned int too for Win64 compatibility.

Michael Stefaniuc mstefani at redhat.de
Sun Oct 15 05:27:34 CDT 2006


Hello,

this is needed by ole32 for the Win64 printf format warning fixes.

bye
	michael

---
 dlls/crypt32/sip.c            |    2 +-
 dlls/crypt32/tests/sip.c      |    2 +-
 dlls/dsound/tests/propset.c   |    8 ++++----
 dlls/infosoft/infosoft_main.c |    2 +-
 dlls/mshtml/main.c            |    2 +-
 dlls/ole32/tests/marshal.c    |    2 +-
 dlls/oleaut32/tmarshal.c      |    2 +-
 dlls/oleaut32/typelib.c       |    2 +-
 dlls/oleaut32/typelib16.c     |    2 +-
 dlls/shell32/classes.c        |    2 +-
 dlls/shell32/debughlp.c       |    4 ++--
 dlls/shell32/shfldr.h         |    2 +-
 dlls/shlwapi/ordinal.c        |    2 +-
 dlls/urlmon/regsvr.c          |    2 +-
 include/guiddef.h             |    4 ++++
 include/wine/debug.h          |    4 ++++
 tools/widl/header.c           |    2 +-
 tools/winedump/lnk.c          |    2 +-
 18 files changed, 28 insertions(+), 20 deletions(-)

diff --git a/dlls/crypt32/sip.c b/dlls/crypt32/sip.c
index 55228c2..8fe4b07 100644
--- a/dlls/crypt32/sip.c
+++ b/dlls/crypt32/sip.c
@@ -64,7 +64,7 @@ static void CRYPT_guid2wstr( const GUID 
 {
     char str[40];
 
-    sprintf(str, "{%08lX-%04X-%04X-%02X%02X-%02X%02X%02X%02X%02X%02X}",
+    sprintf(str, "{%08X-%04X-%04X-%02X%02X-%02X%02X%02X%02X%02X%02X}",
            guid->Data1, guid->Data2, guid->Data3,
            guid->Data4[0], guid->Data4[1], guid->Data4[2], guid->Data4[3],
            guid->Data4[4], guid->Data4[5], guid->Data4[6], guid->Data4[7] );
diff --git a/dlls/crypt32/tests/sip.c b/dlls/crypt32/tests/sip.c
index faff684..231b852 100644
--- a/dlls/crypt32/tests/sip.c
+++ b/dlls/crypt32/tests/sip.c
@@ -40,7 +40,7 @@ static char *show_guid(const GUID *guid)
     static char guidstring[39];
 
     sprintf(guidstring,
-        "{%08lx-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}",
+        "{%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}",
         guid->Data1, guid->Data2, guid->Data3,
         guid->Data4[0], guid->Data4[1], guid->Data4[2], guid->Data4[3],
         guid->Data4[4], guid->Data4[5], guid->Data4[6], guid->Data4[7] );
diff --git a/dlls/dsound/tests/propset.c b/dlls/dsound/tests/propset.c
index cf2ab31..b435c96 100644
--- a/dlls/dsound/tests/propset.c
+++ b/dlls/dsound/tests/propset.c
@@ -74,7 +74,7 @@ BOOL CALLBACK callback(PDSPROPERTY_DIREC
           data->DataFlow == DIRECTSOUNDDEVICE_DATAFLOW_RENDER ? "Render" :
           data->DataFlow == DIRECTSOUNDDEVICE_DATAFLOW_CAPTURE ?
           "Capture" : "Unknown");
-    trace("    DeviceId: {%08lx-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}\n",
+    trace("    DeviceId: {%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}\n",
           data->DeviceId.Data1,data->DeviceId.Data2,data->DeviceId.Data3,
           data->DeviceId.Data4[0],data->DeviceId.Data4[1],
           data->DeviceId.Data4[2],data->DeviceId.Data4[3],
@@ -103,7 +103,7 @@ BOOL CALLBACK callback1(PDSPROPERTY_DIRE
           data->DataFlow == DIRECTSOUNDDEVICE_DATAFLOW_RENDER ? "Render" :
           data->DataFlow == DIRECTSOUNDDEVICE_DATAFLOW_CAPTURE ?
           "Capture" : "Unknown");
-    trace("    DeviceId: {%08lx-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}\n",
+    trace("    DeviceId: {%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}\n",
           data->DeviceId.Data1,data->DeviceId.Data2,data->DeviceId.Data3,
           data->DeviceId.Data4[0],data->DeviceId.Data4[1],
           data->DeviceId.Data4[2],data->DeviceId.Data4[3],
@@ -132,7 +132,7 @@ BOOL CALLBACK callbackA(PDSPROPERTY_DIRE
           data->DataFlow == DIRECTSOUNDDEVICE_DATAFLOW_RENDER ? "Render" :
           data->DataFlow == DIRECTSOUNDDEVICE_DATAFLOW_CAPTURE ?
           "Capture" : "Unknown");
-    trace("    DeviceId: {%08lx-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}\n",
+    trace("    DeviceId: {%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}\n",
           data->DeviceId.Data1,data->DeviceId.Data2,data->DeviceId.Data3,
           data->DeviceId.Data4[0],data->DeviceId.Data4[1],
           data->DeviceId.Data4[2],data->DeviceId.Data4[3],
@@ -162,7 +162,7 @@ BOOL CALLBACK callbackW(PDSPROPERTY_DIRE
           data->DataFlow == DIRECTSOUNDDEVICE_DATAFLOW_RENDER ? "Render" :
           data->DataFlow == DIRECTSOUNDDEVICE_DATAFLOW_CAPTURE ?
           "Capture" : "Unknown");
-    trace("\tDeviceId: {%08lx-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}\n",
+    trace("\tDeviceId: {%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}\n",
           data->DeviceId.Data1,data->DeviceId.Data2,data->DeviceId.Data3,
           data->DeviceId.Data4[0],data->DeviceId.Data4[1],
           data->DeviceId.Data4[2],data->DeviceId.Data4[3],
diff --git a/dlls/infosoft/infosoft_main.c b/dlls/infosoft/infosoft_main.c
index 6dfc8e3..ea59476 100644
--- a/dlls/infosoft/infosoft_main.c
+++ b/dlls/infosoft/infosoft_main.c
@@ -163,7 +163,7 @@ static HRESULT add_wordbreaker_clsid( LP
     CHAR key[100], val[50];
 
     strcpy(key, "CLSID\\");
-    sprintf(key+6, "{%08lX-%04X-%04X-%02X%02X-%02X%02X%02X%02X%02X%02X}",
+    sprintf(key+6, "{%08X-%04X-%04X-%02X%02X-%02X%02X%02X%02X%02X%02X}",
             id->Data1, id->Data2, id->Data3,
             id->Data4[0], id->Data4[1], id->Data4[2], id->Data4[3],
             id->Data4[4], id->Data4[5], id->Data4[6], id->Data4[7]);
diff --git a/dlls/mshtml/main.c b/dlls/mshtml/main.c
index e701873..9a45a72 100644
--- a/dlls/mshtml/main.c
+++ b/dlls/mshtml/main.c
@@ -344,7 +344,7 @@ static HRESULT register_server(BOOL do_r
 
     for(i=0; i < sizeof(pse)/sizeof(pse[0]); i++) {
         pse[i].pszValue = mshtml_alloc(39);
-        sprintf(pse[i].pszValue, "{%08lX-%04X-%04X-%02X%02X-%02X%02X%02X%02X%02X%02X}",
+        sprintf(pse[i].pszValue, "{%08X-%04X-%04X-%02X%02X-%02X%02X%02X%02X%02X%02X}",
                 clsids[i]->Data1, clsids[i]->Data2, clsids[i]->Data3, clsids[i]->Data4[0],
                 clsids[i]->Data4[1], clsids[i]->Data4[2], clsids[i]->Data4[3], clsids[i]->Data4[4],
                 clsids[i]->Data4[5], clsids[i]->Data4[6], clsids[i]->Data4[7]);
diff --git a/dlls/ole32/tests/marshal.c b/dlls/ole32/tests/marshal.c
index b873b46..f2fce85 100644
--- a/dlls/ole32/tests/marshal.c
+++ b/dlls/ole32/tests/marshal.c
@@ -1676,7 +1676,7 @@ static void test_freethreadedmarshaldata
         marshal_data += sizeof(void *);
         ok(*(DWORD *)marshal_data == 0, "expected 0x0, but got 0x%x\n", *(DWORD *)marshal_data);
         marshal_data += sizeof(DWORD);
-        trace("got guid data: {%08lx-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}\n",
+        trace("got guid data: {%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}\n",
             ((GUID *)marshal_data)->Data1, ((GUID *)marshal_data)->Data2, ((GUID *)marshal_data)->Data3,
             ((GUID *)marshal_data)->Data4[0], ((GUID *)marshal_data)->Data4[1], ((GUID *)marshal_data)->Data4[2], ((GUID *)marshal_data)->Data4[3],
             ((GUID *)marshal_data)->Data4[4], ((GUID *)marshal_data)->Data4[5], ((GUID *)marshal_data)->Data4[6], ((GUID *)marshal_data)->Data4[7]);
diff --git a/dlls/oleaut32/tmarshal.c b/dlls/oleaut32/tmarshal.c
index 539937d..872f7fd 100644
--- a/dlls/oleaut32/tmarshal.c
+++ b/dlls/oleaut32/tmarshal.c
@@ -272,7 +272,7 @@ _get_typeinfo_for_iid(REFIID riid, IType
     LONG	tlfnlen;
     ITypeLib	*tl;
 
-    sprintf( interfacekey, "Interface\\{%08lx-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}\\Typelib",
+    sprintf( interfacekey, "Interface\\{%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}\\Typelib",
 	riid->Data1, riid->Data2, riid->Data3,
 	riid->Data4[0], riid->Data4[1], riid->Data4[2], riid->Data4[3],
 	riid->Data4[4], riid->Data4[5], riid->Data4[6], riid->Data4[7]
diff --git a/dlls/oleaut32/typelib.c b/dlls/oleaut32/typelib.c
index 4e4e75c..af86387 100644
--- a/dlls/oleaut32/typelib.c
+++ b/dlls/oleaut32/typelib.c
@@ -2542,7 +2542,7 @@ static BOOL TLB_GUIDFromString(char *str
   int i;
   short s;
 
-  if(sscanf(str, "%lx-%hx-%hx-%hx", &guid->Data1, &guid->Data2, &guid->Data3, &s) != 4) {
+  if(sscanf(str, "%x-%hx-%hx-%hx", &guid->Data1, &guid->Data2, &guid->Data3, &s) != 4) {
     FIXME("Can't parse guid %s\n", debugstr_guid(guid));
     return FALSE;
   }
diff --git a/dlls/oleaut32/typelib16.c b/dlls/oleaut32/typelib16.c
index e681355..b746810 100644
--- a/dlls/oleaut32/typelib16.c
+++ b/dlls/oleaut32/typelib16.c
@@ -85,7 +85,7 @@ QueryPathOfRegTypeLib16(
        	TRACE("\n");
 
 	if (HIWORD(guid)) {
-            sprintf( typelibkey, "SOFTWARE\\Classes\\Typelib\\{%08lx-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}\\%d.%d\\%x\\win16",
+            sprintf( typelibkey, "SOFTWARE\\Classes\\Typelib\\{%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}\\%d.%d\\%x\\win16",
                      guid->Data1, guid->Data2, guid->Data3,
                      guid->Data4[0], guid->Data4[1], guid->Data4[2], guid->Data4[3],
                      guid->Data4[4], guid->Data4[5], guid->Data4[6], guid->Data4[7],
diff --git a/dlls/shell32/classes.c b/dlls/shell32/classes.c
index 3fb37db..db4ce80 100644
--- a/dlls/shell32/classes.c
+++ b/dlls/shell32/classes.c
@@ -210,7 +210,7 @@ BOOL HCR_GetExecuteCommandW( HKEY hkeyCl
 static BOOL HCR_RegOpenClassIDKey(REFIID riid, HKEY *hkey)
 {
 	char	xriid[50];
-    sprintf( xriid, "CLSID\\{%08lx-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}",
+    sprintf( xriid, "CLSID\\{%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}",
                  riid->Data1, riid->Data2, riid->Data3,
                  riid->Data4[0], riid->Data4[1], riid->Data4[2], riid->Data4[3],
                  riid->Data4[4], riid->Data4[5], riid->Data4[6], riid->Data4[7] );
diff --git a/dlls/shell32/debughlp.c b/dlls/shell32/debughlp.c
index 96c77ca..16f79f2 100644
--- a/dlls/shell32/debughlp.c
+++ b/dlls/shell32/debughlp.c
@@ -167,7 +167,7 @@ void _dbg_ILSimpleGetText (LPCITEMIDLIST
 	else if (( riid = _dbg_ILGetGUIDPointer(pidl) ))
 	{
 	  if (szOut)
-            sprintf( szOut, "{%08lx-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}",
+            sprintf( szOut, "{%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}",
                  riid->Data1, riid->Data2, riid->Data3,
                  riid->Data4[0], riid->Data4[1], riid->Data4[2], riid->Data4[3],
                  riid->Data4[4], riid->Data4[5], riid->Data4[6], riid->Data4[7] );
@@ -330,7 +330,7 @@ const char * shdebugstr_guid( const stru
 		    name = clsidbuf;
 	    }
 
-            return wine_dbg_sprintf( "\n\t{%08lx-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x} (%s)",
+            return wine_dbg_sprintf( "\n\t{%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x} (%s)",
                  id->Data1, id->Data2, id->Data3,
                  id->Data4[0], id->Data4[1], id->Data4[2], id->Data4[3],
                  id->Data4[4], id->Data4[5], id->Data4[6], id->Data4[7], name ? name : "unknown" );
diff --git a/dlls/shell32/shfldr.h b/dlls/shell32/shfldr.h
index 74f59d8..4950254 100644
--- a/dlls/shell32/shfldr.h
+++ b/dlls/shell32/shfldr.h
@@ -50,7 +50,7 @@ LPITEMIDLIST SHELL32_CreatePidlFromBindC
 
 static inline int SHELL32_GUIDToStringA (REFGUID guid, LPSTR str)
 {
-    return sprintf(str, "{%08lx-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}",
+    return sprintf(str, "{%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}",
             guid->Data1, guid->Data2, guid->Data3,
             guid->Data4[0], guid->Data4[1], guid->Data4[2], guid->Data4[3],
             guid->Data4[4], guid->Data4[5], guid->Data4[6], guid->Data4[7]);
diff --git a/dlls/shlwapi/ordinal.c b/dlls/shlwapi/ordinal.c
index ea71849..d0db76b 100644
--- a/dlls/shlwapi/ordinal.c
+++ b/dlls/shlwapi/ordinal.c
@@ -627,7 +627,7 @@ INT WINAPI SHStringFromGUIDA(REFGUID gui
 
   TRACE("(%s,%p,%d)\n", debugstr_guid(guid), lpszDest, cchMax);
 
-  sprintf(xguid, "{%08lX-%04X-%04X-%02X%02X-%02X%02X%02X%02X%02X%02X}",
+  sprintf(xguid, "{%08X-%04X-%04X-%02X%02X-%02X%02X%02X%02X%02X%02X}",
           guid->Data1, guid->Data2, guid->Data3,
           guid->Data4[0], guid->Data4[1], guid->Data4[2], guid->Data4[3],
           guid->Data4[4], guid->Data4[5], guid->Data4[6], guid->Data4[7]);
diff --git a/dlls/urlmon/regsvr.c b/dlls/urlmon/regsvr.c
index 808d3d7..0234b0f 100644
--- a/dlls/urlmon/regsvr.c
+++ b/dlls/urlmon/regsvr.c
@@ -615,7 +615,7 @@ static HRESULT register_inf(BOOL doregis
 
     for(i = 0; i < sizeof(pse)/sizeof(pse[0]); i++) {
         pse[i].pszValue = HeapAlloc(GetProcessHeap(), 0, 39);
-        sprintf(pse[i].pszValue, "{%08lX-%04X-%04X-%02X%02X-%02X%02X%02X%02X%02X%02X}",
+        sprintf(pse[i].pszValue, "{%08X-%04X-%04X-%02X%02X-%02X%02X%02X%02X%02X%02X}",
                 clsids[i]->Data1, clsids[i]->Data2, clsids[i]->Data3, clsids[i]->Data4[0],
                 clsids[i]->Data4[1], clsids[i]->Data4[2], clsids[i]->Data4[3], clsids[i]->Data4[4],
                 clsids[i]->Data4[5], clsids[i]->Data4[6], clsids[i]->Data4[7]);
diff --git a/include/guiddef.h b/include/guiddef.h
index 8ad314e..507eb5a 100644
--- a/include/guiddef.h
+++ b/include/guiddef.h
@@ -20,7 +20,11 @@ #ifndef GUID_DEFINED
 #define GUID_DEFINED
 typedef struct _GUID
 {
+#if defined(_MSC_VER) || (defined(WINE_NO_LONG_AS_INT) && !defined(_WIN64))
     unsigned long  Data1;
+#else
+    unsigned int   Data1;
+#endif
     unsigned short Data2;
     unsigned short Data3;
     unsigned char  Data4[ 8 ];
diff --git a/include/wine/debug.h b/include/wine/debug.h
index 152956d..661f6d6 100644
--- a/include/wine/debug.h
+++ b/include/wine/debug.h
@@ -187,7 +187,11 @@ static inline const char *wine_dbgstr_gu
 {
     if (!id) return "(null)";
     if (!((INT_PTR)id >> 16)) return wine_dbg_sprintf( "<guid-0x%04x>", (INT_PTR)id & 0xffff );
+#if defined(WINE_NO_LONG_AS_INT) && !defined(_WIN64)
     return wine_dbg_sprintf( "{%08lx-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}",
+#else
+    return wine_dbg_sprintf( "{%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}",
+#endif
                              id->Data1, id->Data2, id->Data3,
                              id->Data4[0], id->Data4[1], id->Data4[2], id->Data4[3],
                              id->Data4[4], id->Data4[5], id->Data4[6], id->Data4[7] );
diff --git a/tools/widl/header.c b/tools/widl/header.c
index 6d34ac2..9d816ef 100644
--- a/tools/widl/header.c
+++ b/tools/widl/header.c
@@ -83,7 +83,7 @@ int is_void(const type_t *t, const var_t
 void write_guid(FILE *f, const char *guid_prefix, const char *name, const UUID *uuid)
 {
   if (!uuid) return;
-  fprintf(f, "DEFINE_GUID(%s_%s, 0x%08lx, 0x%04x, 0x%04x, 0x%02x,0x%02x, 0x%02x,"
+  fprintf(f, "DEFINE_GUID(%s_%s, 0x%08x, 0x%04x, 0x%04x, 0x%02x,0x%02x, 0x%02x,"
         "0x%02x,0x%02x,0x%02x,0x%02x,0x%02x);\n",
         guid_prefix, name, uuid->Data1, uuid->Data2, uuid->Data3, uuid->Data4[0],
         uuid->Data4[1], uuid->Data4[2], uuid->Data4[3], uuid->Data4[4], uuid->Data4[5],
diff --git a/tools/winedump/lnk.c b/tools/winedump/lnk.c
index d779dd2..f4669c1 100644
--- a/tools/winedump/lnk.c
+++ b/tools/winedump/lnk.c
@@ -105,7 +105,7 @@ #include "poppack.h"
 
 static void guid_to_string(LPGUID guid, char *str)
 {
-    sprintf(str, "{%08lx-%04x-%04x-%02X%02X-%02X%02X%02X%02X%02X%02X}",
+    sprintf(str, "{%08x-%04x-%04x-%02X%02X-%02X%02X%02X%02X%02X%02X}",
             guid->Data1, guid->Data2, guid->Data3,
             guid->Data4[0], guid->Data4[1], guid->Data4[2], guid->Data4[3],
             guid->Data4[4], guid->Data4[5], guid->Data4[6], guid->Data4[7]);
-- 
1.4.2.3
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://www.winehq.org/pipermail/wine-patches/attachments/20061015/ab218ee9/attachment-0001.pgp


More information about the wine-patches mailing list