Module: wine Branch: master Commit: 187dec992f9e4056e80d4f00b06d54f5a0ca0fa0 URL: http://source.winehq.org/git/wine.git/?a=commit;h=187dec992f9e4056e80d4f00b0...
Author: Damjan Jovanovic damjan.jov@gmail.com Date: Tue Jul 20 21:16:29 2010 +0200
winemenubuilder: Always initialize COM.
---
programs/winemenubuilder/winemenubuilder.c | 27 +++++++++------------------ 1 files changed, 9 insertions(+), 18 deletions(-)
diff --git a/programs/winemenubuilder/winemenubuilder.c b/programs/winemenubuilder/winemenubuilder.c index 8ee8387..7641b91 100644 --- a/programs/winemenubuilder/winemenubuilder.c +++ b/programs/winemenubuilder/winemenubuilder.c @@ -2775,13 +2775,6 @@ static BOOL Process_Link( LPCWSTR linkname, BOOL bWait ) return 1; }
- r = CoInitialize( NULL ); - if( FAILED( r ) ) - { - WINE_ERR("CoInitialize failed\n"); - return 1; - } - r = CoCreateInstance( &CLSID_ShellLink, NULL, CLSCTX_INPROC_SERVER, &IID_IShellLinkW, (LPVOID *) &sl ); if( FAILED( r ) ) @@ -2817,8 +2810,6 @@ static BOOL Process_Link( LPCWSTR linkname, BOOL bWait ) IPersistFile_Release( pf ); IShellLinkW_Release( sl );
- CoUninitialize(); - return !r; }
@@ -2845,13 +2836,6 @@ static BOOL Process_URL( LPCWSTR urlname, BOOL bWait ) return 1; }
- r = CoInitialize( NULL ); - if( FAILED( r ) ) - { - WINE_ERR("CoInitialize failed\n"); - return 1; - } - r = CoCreateInstance( &CLSID_InternetShortcut, NULL, CLSCTX_INPROC_SERVER, &IID_IUniformResourceLocatorW, (LPVOID *) &url ); if( FAILED( r ) ) @@ -2882,8 +2866,6 @@ static BOOL Process_URL( LPCWSTR urlname, BOOL bWait ) IPersistFile_Release( pf ); url->lpVtbl->Release( url );
- CoUninitialize(); - return !r; }
@@ -3116,11 +3098,19 @@ int PASCAL wWinMain (HINSTANCE hInstance, HINSTANCE prev, LPWSTR cmdline, int sh LPWSTR token = NULL, p; BOOL bWait = FALSE; BOOL bURL = FALSE; + HRESULT hr; int ret = 0;
if (!init_xdg()) return 1;
+ hr = CoInitialize(NULL); + if (FAILED(hr)) + { + WINE_ERR("could not initialize COM, error 0x%08X\n", hr); + return 1; + } + for( p = cmdline; p && *p; ) { token = next_token( &p ); @@ -3160,5 +3150,6 @@ int PASCAL wWinMain (HINSTANCE hInstance, HINSTANCE prev, LPWSTR cmdline, int sh } }
+ CoUninitialize(); return ret; }