Module: wine Branch: master Commit: da6a18ecb5e37f0397d69d0f57f23c07050a19cd URL: https://source.winehq.org/git/wine.git/?a=commit;h=da6a18ecb5e37f0397d69d0f5...
Author: Sven Baars sbaars@codeweavers.com Date: Sun Oct 4 22:35:31 2020 +0200
vbscript: Avoid double frees on error path (Coverity).
Signed-off-by: Sven Baars sbaars@codeweavers.com Signed-off-by: Jacek Caban jacek@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/vbscript/global.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/dlls/vbscript/global.c b/dlls/vbscript/global.c index 4b1c23b838..18504a43b9 100644 --- a/dlls/vbscript/global.c +++ b/dlls/vbscript/global.c @@ -2423,7 +2423,6 @@ static HRESULT Global_Split(BuiltinDisp *This, VARIANT *args, unsigned args_cnt, } hres = SafeArrayAccessData(sa, (void**)&data); if(FAILED(hres)) { - SafeArrayDestroy(sa); goto error; }
@@ -2440,7 +2439,6 @@ static HRESULT Global_Split(BuiltinDisp *This, VARIANT *args, unsigned args_cnt, hres = VariantCopyInd(data+i, &var); if(FAILED(hres)) { SafeArrayUnaccessData(sa); - SafeArrayDestroy(sa); goto error; } start = indices[i]+delimiterlen; @@ -2452,7 +2450,7 @@ error: V_VT(res) = VT_ARRAY|VT_VARIANT; V_ARRAY(res) = sa; }else { - if (sa) SafeArrayDestroy(sa); + SafeArrayDestroy(sa); }
heap_free(indices);