Jacek Caban : jscript: Added a few missing allocation checks (Coverity).

Alexandre Julliard julliard at winehq.org
Tue Oct 7 08:54:12 CDT 2008


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

Author: Jacek Caban <jacek at codeweavers.com>
Date:   Mon Oct  6 09:57:20 2008 -0500

jscript: Added a few missing allocation checks (Coverity).

---

 dlls/jscript/array.c   |    6 +++++-
 dlls/jscript/jscript.c |    2 ++
 dlls/jscript/number.c  |    6 +++++-
 3 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/dlls/jscript/array.c b/dlls/jscript/array.c
index 11c8b95..43cc61f 100644
--- a/dlls/jscript/array.c
+++ b/dlls/jscript/array.c
@@ -744,9 +744,13 @@ static HRESULT ArrayConstr_value(DispatchEx *dispex, LCID lcid, WORD flags, DISP
 
 static HRESULT alloc_array(script_ctx_t *ctx, BOOL use_constr, ArrayInstance **ret)
 {
-    ArrayInstance *array = heap_alloc_zero(sizeof(ArrayInstance));
+    ArrayInstance *array;
     HRESULT hres;
 
+    array = heap_alloc_zero(sizeof(ArrayInstance));
+    if(!array)
+        return E_OUTOFMEMORY;
+
     if(use_constr)
         hres = init_dispex_from_constr(&array->dispex, ctx, &Array_info, ctx->array_constr);
     else
diff --git a/dlls/jscript/jscript.c b/dlls/jscript/jscript.c
index 3730661..41fb40f 100644
--- a/dlls/jscript/jscript.c
+++ b/dlls/jscript/jscript.c
@@ -758,6 +758,8 @@ HRESULT WINAPI JScriptFactory_CreateInstance(IClassFactory *iface, IUnknown *pUn
     lock_module();
 
     ret = heap_alloc_zero(sizeof(*ret));
+    if(!ret)
+        return E_OUTOFMEMORY;
 
     ret->lpIActiveScriptVtbl                 = &JScriptVtbl;
     ret->lpIActiveScriptParseVtbl            = &JScriptParseVtbl;
diff --git a/dlls/jscript/number.c b/dlls/jscript/number.c
index 974d309..598de42 100644
--- a/dlls/jscript/number.c
+++ b/dlls/jscript/number.c
@@ -231,9 +231,13 @@ static HRESULT NumberConstr_value(DispatchEx *dispex, LCID lcid, WORD flags, DIS
 
 static HRESULT alloc_number(script_ctx_t *ctx, BOOL use_constr, NumberInstance **ret)
 {
-    NumberInstance *number = heap_alloc_zero(sizeof(NumberInstance));
+    NumberInstance *number;
     HRESULT hres;
 
+    number = heap_alloc_zero(sizeof(NumberInstance));
+    if(!number)
+        return E_OUTOFMEMORY;
+
     if(use_constr)
         hres = init_dispex_from_constr(&number->dispex, ctx, &Number_info, ctx->number_constr);
     else




More information about the wine-cvs mailing list