Alexandre Julliard : jscript/tests: Don' t crash if we fail to get the IActiveScriptParse interface.

Alexandre Julliard julliard at winehq.org
Mon Jan 5 10:24:36 CST 2009


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

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Mon Jan  5 15:50:36 2009 +0100

jscript/tests: Don't crash if we fail to get the IActiveScriptParse interface.

---

 dlls/jscript/tests/jscript.c |   10 ++++++++++
 dlls/jscript/tests/run.c     |   10 ++++++++++
 2 files changed, 20 insertions(+), 0 deletions(-)

diff --git a/dlls/jscript/tests/jscript.c b/dlls/jscript/tests/jscript.c
index 4cc01c9..ac65058 100644
--- a/dlls/jscript/tests/jscript.c
+++ b/dlls/jscript/tests/jscript.c
@@ -295,6 +295,11 @@ static void test_jscript(void)
 
     hres = IUnknown_QueryInterface(unk, &IID_IActiveScriptParse, (void**)&parse);
     ok(hres == S_OK, "Could not get IActiveScriptParse: %08x\n", hres);
+    if (FAILED(hres))
+    {
+        IActiveScript_Release(script);
+        return;
+    }
 
     test_state(script, SCRIPTSTATE_UNINITIALIZED);
     test_safety(unk);
@@ -366,6 +371,11 @@ static void test_jscript2(void)
 
     hres = IUnknown_QueryInterface(unk, &IID_IActiveScriptParse, (void**)&parse);
     ok(hres == S_OK, "Could not get IActiveScriptParse: %08x\n", hres);
+    if (FAILED(hres))
+    {
+        IActiveScript_Release(script);
+        return;
+    }
 
     test_state(script, SCRIPTSTATE_UNINITIALIZED);
 
diff --git a/dlls/jscript/tests/run.c b/dlls/jscript/tests/run.c
index 81de579..66c312e 100644
--- a/dlls/jscript/tests/run.c
+++ b/dlls/jscript/tests/run.c
@@ -574,6 +574,11 @@ static void parse_script(BSTR script_str)
 
     hres = IActiveScript_QueryInterface(engine, &IID_IActiveScriptParse, (void**)&parser);
     ok(hres == S_OK, "Could not get IActiveScriptParse: %08x\n", hres);
+    if (FAILED(hres))
+    {
+        IActiveScript_Release(engine);
+        return;
+    }
 
     hres = IActiveScriptParse_InitNew(parser);
     ok(hres == S_OK, "InitNew failed: %08x\n", hres);
@@ -696,6 +701,11 @@ static void test_isvisible(BOOL global_members)
 
     hres = IActiveScript_QueryInterface(engine, &IID_IActiveScriptParse, (void**)&parser);
     ok(hres == S_OK, "Could not get IActiveScriptParse: %08x\n", hres);
+    if (FAILED(hres))
+    {
+        IActiveScript_Release(engine);
+        return;
+    }
 
     hres = IActiveScriptParse_InitNew(parser);
     ok(hres == S_OK, "InitNew failed: %08x\n", hres);




More information about the wine-cvs mailing list