ole32: Fix crash under NT

Alistair Leslie-Hughes leslie_alistair at hotmail.com
Mon Jun 3 05:55:25 CDT 2013


Hi,


Changelog:
     ole32: Fix crash under NT


Best Regards
  Alistair Leslie-Hughes
-------------- next part --------------
>From e7b595dd84db4a9e2cafe6fa5848daeb1df0d593 Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
Date: Sun, 2 Jun 2013 20:19:57 +1000
Subject: [PATCH] Fix crash under NT
To: wine-patches <wine-patches at winehq.org>

---
 dlls/ole32/tests/storage32.c | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/dlls/ole32/tests/storage32.c b/dlls/ole32/tests/storage32.c
index 9d99c38..3514fdd 100644
--- a/dlls/ole32/tests/storage32.c
+++ b/dlls/ole32/tests/storage32.c
@@ -3071,11 +3071,13 @@ if (hr == S_OK) {
 
     /* reader mode */
     hr = StgOpenStorage(fileW, NULL, STGM_DIRECT_SWMR | STGM_READ | STGM_SHARE_DENY_NONE, NULL, 0, &stg);
-    ok(hr == S_OK, "got %08x\n", hr);
-
-    hr = IStorage_QueryInterface(stg, &IID_IDirectWriterLock, (void**)&dwlock);
-    ok(hr == E_NOINTERFACE, "got %08x\n", hr);
-    IStorage_Release(stg);
+    ok(hr == S_OK || broken(hr == STG_E_INVALIDFLAG), "got %08x\n", hr);
+    if(hr == S_OK)
+    {
+       hr = IStorage_QueryInterface(stg, &IID_IDirectWriterLock, (void**)&dwlock);
+       ok(hr == E_NOINTERFACE, "got %08x\n", hr);
+       IStorage_Release(stg);
+    }
 
     /* writer mode */
     hr = StgOpenStorage(fileW, NULL, STGM_DIRECT_SWMR | STGM_READWRITE | STGM_SHARE_DENY_WRITE, NULL, 0, &stg);
-- 
1.8.1.2



More information about the wine-patches mailing list