URLMON: Added file protocol implementation

Jacek Caban jack at itma.pwr.wroc.pl
Tue Sep 6 16:05:31 CDT 2005


Stefan Leichter wrote:

>Am Samstag, 3. September 2005 21:22 schrieb Jacek Caban:
>  
>
>>Changelog:
>>    Added file protocol implementation
>>    
>>
>
>Hello,
>
>this patch breaks the cross compiling of the tests with mingw. Which is the 
>correct location of the class id?
>
>Bye Stefan
>
>make[3]: Entering directory `/usr/src/wine/wine-mingw/dlls/urlmon/tests'
>i386-mingw32-gcc generated.cross.o misc.cross.o protocol.cross.o url.cross.o 
>testlist.cross.o  -o urlmon_crosstest.exe -lurlmon -luser32 -lkernel32 
>-lole32 -luuid
>/usr/local/lib/gcc/i386-mingw32/3.4.2/../../../../i386-mingw32/lib/
>libuuid.a(uuid.o):/usr/src/packages/BUILD/mingw-3.7/w32api-3.2/lib/uuid.c:
>(.rdata+0x1340): multiple definition of `_CLSID_FileProtocol'
>protocol.cross.o:/usr/src/wine/wine-mingw/dlls/urlmon/tests/../../../../wine/
>dlls/urlmon/tests/protocol.c:63: first defined here
>collect2: ld returned 1 exit status
>make[3]: *** [urlmon_crosstest.exe] Fehler 1
>make[3]: Leaving directory `/usr/src/wine/wine-mingw/dlls/urlmon/tests'
>  
>
This patch should fix the problem.

Changelog:
    Move protocol's CLSIDs to urlmon.idl
-------------- next part --------------
Index: include/urlmon.idl
===================================================================
RCS file: /home/wine/wine/include/urlmon.idl,v
retrieving revision 1.21
diff -u -p -r1.21 urlmon.idl
--- include/urlmon.idl	6 Sep 2005 09:21:29 -0000	1.21
+++ include/urlmon.idl	6 Sep 2005 21:01:25 -0000
@@ -1080,6 +1080,15 @@ cpp_quote("DEFINE_GUID(IID_IAsyncMoniker
 cpp_quote("DEFINE_GUID(IID_IAsyncBindCtx, 0x79EAC9D4, 0xBAF9, 0x11CE, 0x8C, 0x82, 0x00, 0xAA, 0x00, 0x4B, 0xA9, 0x0B);")
 cpp_quote("DEFINE_GUID(CLSID_StdURLMoniker, 0x79EAC9E0, 0xBAF9, 0x11CE, 0x8C, 0x82, 0x00, 0xAA, 0x00, 0x4B, 0xA9, 0x0B);")
 
+cpp_quote("DEFINE_GUID(CLSID_CdlProtocol, 0x3dd53d40, 0x7b8b, 0x11D0, 0xb0,0x13, 0x00,0xaa,0x00,0x59,0xce,0x02);")
+cpp_quote("DEFINE_GUID(CLSID_FileProtocol, 0x79EAC9E7, 0xBAF9, 0x11CE, 0x8C,0x82, 0x00,0xAA,0x00,0x4B,0xA9,0x0B);")
+cpp_quote("DEFINE_GUID(CLSID_FtpProtocol, 0x79EAC9E3, 0xBAF9, 0x11CE, 0x8C,0x82, 0x00,0xAA,0x00,0x4B,0xA9,0x0B);")
+cpp_quote("DEFINE_GUID(CLSID_GopherProtocol, 0x79EAC9E4, 0xBAF9, 0x11CE, 0x8C,0x82, 0x00,0xAA,0x00,0x4B,0xA9,0x0B);")
+cpp_quote("DEFINE_GUID(CLSID_HttpProtocol, 0x79EAC9E2, 0xBAF9, 0x11CE, 0x8C,0x82, 0x00,0xAA,0x00,0x4B,0xA9,0x0B);")
+cpp_quote("DEFINE_GUID(CLSID_HttpSProtocol, 0x79EAC9E5, 0xBAF9, 0x11CE, 0x8C,0x82, 0x00,0xAA,0x00,0x4B,0xA9,0x0B);")
+cpp_quote("DEFINE_GUID(CLSID_MkProtocol, 0x79EAC9E6, 0xBAF9, 0x11CE, 0x8C,0x82, 0x00,0xAA,0x00,0x4B,0xA9,0x0B);")
+
+
 cpp_quote("#define MK_S_ASYNCHRONOUS                0x000401E8")
 cpp_quote("#define S_ASYNCHRONOUS                   MK_S_ASYNCHRONOUS")
 
Index: dlls/urlmon/urlmon_main.h
===================================================================
RCS file: /home/wine/wine/dlls/urlmon/urlmon_main.h,v
retrieving revision 1.12
diff -u -p -r1.12 urlmon_main.h
--- dlls/urlmon/urlmon_main.h	6 Sep 2005 09:27:04 -0000	1.12
+++ dlls/urlmon/urlmon_main.h	6 Sep 2005 21:01:25 -0000
@@ -52,13 +52,4 @@ typedef struct
 HRESULT	UMCreateStreamOnCacheFile(LPCWSTR pszURL, DWORD dwSize, LPWSTR pszFileName, HANDLE *phfile, IUMCacheStream **ppstr);
 void	UMCloseCacheFileStream(IUMCacheStream *pstr);
 
-DEFINE_GUID(CLSID_CdlProtocol, 0x3dd53d40, 0x7b8b, 0x11D0, 0xb0,0x13, 0x00,0xaa,0x00,0x59,0xce,0x02);
-DEFINE_GUID(CLSID_FileProtocol, 0x79EAC9E7, 0xBAF9, 0x11CE, 0x8C,0x82, 0x00,0xAA,0x00,0x4B,0xA9,0x0B);
-DEFINE_GUID(CLSID_FtpProtocol, 0x79EAC9E3, 0xBAF9, 0x11CE, 0x8C,0x82, 0x00,0xAA,0x00,0x4B,0xA9,0x0B);
-DEFINE_GUID(CLSID_GopherProtocol, 0x79EAC9E4, 0xBAF9, 0x11CE, 0x8C,0x82, 0x00,0xAA,0x00,0x4B,0xA9,0x0B);
-DEFINE_GUID(CLSID_HttpProtocol, 0x79EAC9E2, 0xBAF9, 0x11CE, 0x8C,0x82, 0x00,0xAA,0x00,0x4B,0xA9,0x0B);
-DEFINE_GUID(CLSID_HttpsProtocol, 0x79EAC9E5, 0xBAF9, 0x11CE, 0x8C,0x82, 0x00,0xAA,0x00,0x4B,0xA9,0x0B);
-DEFINE_GUID(CLSID_MkProtocol, 0x79EAC9E6, 0xBAF9, 0x11CE, 0x8C,0x82, 0x00,0xAA,0x00,0x4B,0xA9,0x0B);
-
-
 #endif /* __WINE_URLMON_MAIN_H */
Index: dlls/urlmon/regsvr.c
===================================================================
RCS file: /home/wine/wine/dlls/urlmon/regsvr.c,v
retrieving revision 1.3
diff -u -p -r1.3 regsvr.c
--- dlls/urlmon/regsvr.c	8 Aug 2005 17:37:40 -0000	1.3
+++ dlls/urlmon/regsvr.c	6 Sep 2005 21:01:25 -0000
@@ -37,7 +37,6 @@
 
 #include "wine/debug.h"
 
-#include "initguid.h"
 #include "urlmon_main.h"
 
 WINE_DEFAULT_DEBUG_CHANNEL(urlmon);
@@ -546,7 +545,7 @@ static struct regsvr_coclass const cocla
         "urlmon.dll",
         "Apartment"
     },
-    {   &CLSID_HttpsProtocol,
+    {   &CLSID_HttpSProtocol,
         "https: Asynchronous Pluggable Protocol Handler",
         NULL,
         "urlmon.dll",
@@ -594,7 +593,7 @@ static HRESULT register_inf(BOOL doregis
     INF_SET_CLSID(FtpProtocol);
     INF_SET_CLSID(GopherProtocol);
     INF_SET_CLSID(HttpProtocol);
-    INF_SET_CLSID(HttpsProtocol);
+    INF_SET_CLSID(HttpSProtocol);
     INF_SET_CLSID(MkProtocol);
 
     for(i = 0; i < sizeof(pse)/sizeof(pse[0]); i++) {
Index: dlls/urlmon/tests/protocol.c
===================================================================
RCS file: /home/wine/wine/dlls/urlmon/tests/protocol.c,v
retrieving revision 1.1
diff -u -p -r1.1 protocol.c
--- dlls/urlmon/tests/protocol.c	6 Sep 2005 09:27:04 -0000	1.1
+++ dlls/urlmon/tests/protocol.c	6 Sep 2005 21:01:25 -0000
@@ -28,8 +28,6 @@
 
 #include "initguid.h"
 
-DEFINE_GUID(CLSID_FileProtocol, 0x79EAC9E7, 0xBAF9, 0x11CE, 0x8C,0x82, 0x00,0xAA,0x00,0x4B,0xA9,0x0B);
-
 #define DEFINE_EXPECT(func) \
     static BOOL expect_ ## func = FALSE, called_ ## func = FALSE
 


More information about the wine-patches mailing list