Module: wine Branch: master Commit: 7a5ca2d3d45a447f18dba26898538b01ba480e78 URL: http://source.winehq.org/git/wine.git/?a=commit;h=7a5ca2d3d45a447f18dba26898...
Author: Nikolay Sivov nsivov@codeweavers.com Date: Sat Jun 1 13:38:51 2013 +0400
shell32: Fix some tests failures on Win8.
---
dlls/shell32/ebrowser.c | 5 +-- dlls/shell32/tests/ebrowser.c | 64 +++++++++++++++++++++++++++-------------- 2 files changed, 44 insertions(+), 25 deletions(-)
diff --git a/dlls/shell32/ebrowser.c b/dlls/shell32/ebrowser.c index 90be5f8..f7242e9 100644 --- a/dlls/shell32/ebrowser.c +++ b/dlls/shell32/ebrowser.c @@ -1414,9 +1414,8 @@ static HRESULT WINAPI IShellBrowser_fnGetControlWindow(IShellBrowser *iface, UINT id, HWND *phwnd) { ExplorerBrowserImpl *This = impl_from_IShellBrowser(iface); - TRACE("%p (%d, %p)\n", This, id, phwnd); - - /* Not implemented. */ + TRACE("(%p)->(%d, %p)\n", This, id, phwnd); + if (phwnd) *phwnd = NULL; return E_NOTIMPL; }
diff --git a/dlls/shell32/tests/ebrowser.c b/dlls/shell32/tests/ebrowser.c index 8149f8f..c56dffb 100644 --- a/dlls/shell32/tests/ebrowser.c +++ b/dlls/shell32/tests/ebrowser.c @@ -61,6 +61,14 @@ DEFINE_GUID(IID_UnknownInterface7, 0x68A4FDBA, 0xA48A, 0x4A86, 0xA3,0x29, 0x1 DEFINE_GUID(IID_UnknownInterface8, 0xD3B1CAF5, 0xEC4F, 0x4B2E, 0xBC,0xB0, 0x60,0xD7,0x15,0xC9,0x3C,0xB2); DEFINE_GUID(IID_UnknownInterface9, 0x9536CA39, 0x1ACB, 0x4AE6, 0xAD,0x27, 0x24,0x03,0xD0,0x4C,0xA2,0x8F); DEFINE_GUID(IID_UnknownInterface10, 0xB722BE00, 0x4E68, 0x101B, 0xA2,0xBC, 0x00,0xAA,0x00,0x40,0x47,0x70); +DEFINE_GUID(IID_UnknownInterface11, 0x691ecf9f, 0x6b9c, 0x4311, 0xa1,0x7b, 0xad,0x15,0x4c,0x30,0xe9,0x1f); +DEFINE_GUID(IID_UnknownInterface12, 0x7e3159f5, 0x21ca, 0x4ec2, 0x8f,0xbe, 0x66,0x2d,0x08,0x2c,0xa3,0xeb); +DEFINE_GUID(IID_UnknownInterface13, 0xa36a3ace, 0x8332, 0x45ce, 0xaa,0x29, 0x50,0x3c,0xb7,0x6b,0x25,0x87); +DEFINE_GUID(IID_UnknownInterface14, 0x16770868, 0x239c, 0x445b, 0xa0,0x1d, 0xf2,0x6c,0x7f,0xbb,0xf2,0x6c); +DEFINE_GUID(IID_UnknownInterface15, 0x05a89298, 0x6246, 0x4c63, 0xbb,0x0d, 0x9b,0xda,0xf1,0x40,0xbf,0x3b); +DEFINE_GUID(IID_UnknownInterface16, 0x35094a87, 0x8bb1, 0x4237, 0x96,0xc6, 0xc4,0x17,0xee,0xbd,0xb0,0x78); +DEFINE_GUID(IID_UnknownInterface17, 0xa36a3ace, 0x8332, 0x45ce, 0xaa,0x29, 0x50,0x3c,0xb7,0x6b,0x25,0x87); +DEFINE_GUID(IID_UnknownInterface18, 0x3d5d8c60, 0x21e4, 0x4b03, 0x83,0xb8, 0xc7,0x3f,0x8c,0x94,0x00,0x78);
static HWND hwnd;
@@ -113,11 +121,19 @@ static void process_msgs(void) } }
-static void dbg_print_guid(const GUID *guid) { - WCHAR buf[MAX_PATH]; +static const char *debugstr_guid(REFIID riid) +{ + static char buf[50]; + + if(!riid) + return "(null)"; + + sprintf(buf, "{%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]);
- StringFromGUID2(guid, buf, MAX_PATH); - printf("guid:[%s]\n", wine_dbgstr_wn(buf, lstrlenW(buf))); + return buf; }
/********************************************************************* @@ -215,8 +231,7 @@ static inline IExplorerPaneVisibilityImpl *impl_from_IExplorerPaneVisibility(IEx static HRESULT WINAPI IExplorerPaneVisibility_fnQueryInterface(IExplorerPaneVisibility *iface, REFIID riid, LPVOID *ppvObj) { - ok(0, "Not called.\n"); - trace("REFIID:"); dbg_print_guid(riid); + ok(0, "unexpected, %s\n", debugstr_guid(riid)); *ppvObj = NULL; return E_NOINTERFACE; } @@ -260,7 +275,7 @@ static HRESULT WINAPI IExplorerPaneVisibility_fnGetPaneState(IExplorerPaneVisibi else if(IsEqualGUID(&EP_AdvQueryPane, ep)) This->aqp++; else { - trace("Unknown explorer pane: "); dbg_print_guid(ep); + trace("Unknown explorer pane: %s\n", debugstr_guid(ep)); This->unk++; }
@@ -305,8 +320,7 @@ static inline ICommDlgBrowser3Impl *impl_from_ICommDlgBrowser3(ICommDlgBrowser3
static HRESULT WINAPI ICommDlgBrowser3_fnQueryInterface(ICommDlgBrowser3 *iface, REFIID riid, LPVOID *ppvObj) { - ok(0, "Not called.\n"); - trace("riid:"); dbg_print_guid(riid); + ok(0, "unexpected %s\n", debugstr_guid(riid)); *ppvObj = NULL; return E_NOINTERFACE; } @@ -476,8 +490,7 @@ static HRESULT WINAPI IServiceProvider_fnQueryInterface(IServiceProvider *iface, return E_NOINTERFACE; }
- ok(0, "Unexpected interface requested.\n"); - trace("riid: "); dbg_print_guid(riid); + ok(0, "Unexpected interface requested, %s\n", debugstr_guid(riid)); return E_NOINTERFACE; }
@@ -521,12 +534,7 @@ static HRESULT WINAPI IServiceProvider_fnQueryService(IServiceProvider *iface, } }
- ok(was_in_list, "-- Unknown service requested --\n"); - if(!was_in_list) - { - trace("guidService: "); dbg_print_guid(guidService); - trace("riid: "); dbg_print_guid(riid); - } + ok(was_in_list, "unknown service, serviceID: %s, riid: %s\n", debugstr_guid(guidService), debugstr_guid(riid));
/* Give back an interface, if any. */ if(punk) @@ -617,22 +625,25 @@ static void test_SB_misc(void) }
/* Some unimplemented methods */ - retHwnd = (HWND)0xDEADBEEF; + retHwnd = (HWND)0xdeadbeef; hr = IShellBrowser_GetControlWindow(psb, FCW_TOOLBAR, &retHwnd); ok(hr == E_NOTIMPL, "got (0x%08x)\n", hr); - ok(retHwnd == (HWND)0xDEADBEEF, "HWND overwritten\n"); + ok(retHwnd == NULL || broken(retHwnd == (HWND)0xdeadbeef), "got %p\n", retHwnd);
+ retHwnd = (HWND)0xdeadbeef; hr = IShellBrowser_GetControlWindow(psb, FCW_STATUS, &retHwnd); ok(hr == E_NOTIMPL, "got (0x%08x)\n", hr); - ok(retHwnd == (HWND)0xDEADBEEF, "HWND overwritten\n"); + ok(retHwnd == NULL || broken(retHwnd == (HWND)0xdeadbeef), "got %p\n", retHwnd);
+ retHwnd = (HWND)0xdeadbeef; hr = IShellBrowser_GetControlWindow(psb, FCW_TREE, &retHwnd); ok(hr == E_NOTIMPL, "got (0x%08x)\n", hr); - ok(retHwnd == (HWND)0xDEADBEEF, "HWND overwritten\n"); + ok(retHwnd == NULL || broken(retHwnd == (HWND)0xdeadbeef), "got %p\n", retHwnd);
+ retHwnd = (HWND)0xdeadbeef; hr = IShellBrowser_GetControlWindow(psb, FCW_PROGRESS, &retHwnd); ok(hr == E_NOTIMPL, "got (0x%08x)\n", hr); - ok(retHwnd == (HWND)0xDEADBEEF, "HWND overwritten\n"); + ok(retHwnd == NULL || broken(retHwnd == (HWND)0xdeadbeef), "got %p\n", retHwnd);
/* ::InsertMenuSB */ hr = IShellBrowser_InsertMenusSB(psb, NULL, NULL); @@ -927,6 +938,15 @@ static void test_SetSite(void) { &IID_UnknownInterface4, &IID_IUnknown, 0, NULL }, { &IID_UnknownInterface6, &IID_UnknownInterface7, 0, NULL }, { &IID_IBrowserWithActivationNotification, &IID_IBrowserWithActivationNotification, 0, NULL }, + /* Win 8 */ + { &IID_ICommDlgBrowser, &IID_UnknownInterface11, 0, NULL }, + { &IID_ICommDlgBrowser, &IID_UnknownInterface12, 0, NULL }, + { &IID_UnknownInterface13, &IID_IUnknown, 0, NULL }, + { &IID_UnknownInterface14, &IID_UnknownInterface14, 0, NULL }, + { &IID_UnknownInterface15, &IID_UnknownInterface15, 0, NULL }, + { &IID_UnknownInterface16, &IID_UnknownInterface16, 0, NULL }, + { &IID_UnknownInterface17, &IID_UnknownInterface17, 0, NULL }, + { &IID_UnknownInterface18, &IID_UnknownInterface18, 0, NULL },
/* Other services requested in Vista, Windows 2008 but not in Windows 7 */ { &IID_IBrowserSettings_Vista, &IID_IBrowserSettings_Vista, 0, NULL },