Marcus Meissner : shell32: Avoid a crash in testsuite.

Alexandre Julliard julliard at winehq.org
Mon Nov 13 16:24:19 CST 2017


Module: wine
Branch: master
Commit: 5350eea78dec539919babcdd6ca841117e24f24f
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=5350eea78dec539919babcdd6ca841117e24f24f

Author: Marcus Meissner <meissner at suse.de>
Date:   Mon Nov 13 13:31:31 2017 +0100

shell32: Avoid a crash in testsuite.

This happens on wow32 builds, we try to call a 64bit program via the
generic typelib marshalling and disp is NULL. We still fail, just
do not pop up the crash dialog.

Signed-off-by: Marcus Meissner <meissner at suse.de>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/shell32/tests/shelldispatch.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/dlls/shell32/tests/shelldispatch.c b/dlls/shell32/tests/shelldispatch.c
index 9825c3a..ce3b1a3 100644
--- a/dlls/shell32/tests/shelldispatch.c
+++ b/dlls/shell32/tests/shelldispatch.c
@@ -1088,6 +1088,9 @@ todo_wine {
         IUnknown *unk;
 
         ok(disp != NULL, "got %p\n", disp);
+
+        if (disp == NULL) goto skip_disp_tests;
+
         ok(ret != HandleToUlong(hwnd), "got %d\n", ret);
 
         /* IDispatch-related tests */
@@ -1165,6 +1168,7 @@ if (hr == S_OK) {
         IServiceProvider_Release(sp);
         IDispatch_Release(disp);
     }
+skip_disp_tests:
 
     disp = (void*)0xdeadbeef;
     ret = 0xdead;




More information about the wine-cvs mailing list