Thomas Faber : ntdll: Handle RtlReAllocateHeap failure in com_class_add_progid (Coverity).

Alexandre Julliard julliard at winehq.org
Mon May 14 06:54:26 CDT 2018


Module: wine
Branch: stable
Commit: 82eff682389623a986f01cd02179e4bfda9a92bb
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=82eff682389623a986f01cd02179e4bfda9a92bb

Author: Thomas Faber <thomas.faber at reactos.org>
Date:   Tue Jan 16 19:19:34 2018 +0100

ntdll: Handle RtlReAllocateHeap failure in com_class_add_progid (Coverity).

Signed-off-by: Thomas Faber <thomas.faber at reactos.org>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
(cherry picked from commit 42f742e1be8a4f3b26ed3d1a343f17fe55cbf322)
Signed-off-by: Michael Stefaniuc <mstefani at winehq.org>

---

 dlls/ntdll/actctx.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/dlls/ntdll/actctx.c b/dlls/ntdll/actctx.c
index 323ee68..b978438 100644
--- a/dlls/ntdll/actctx.c
+++ b/dlls/ntdll/actctx.c
@@ -1453,8 +1453,11 @@ static BOOL com_class_add_progid(const xmlstr_t *progid, struct entity *entity)
 
     if (progids->allocated == progids->num)
     {
+        WCHAR **new_progids = RtlReAllocateHeap(GetProcessHeap(), 0, progids->progids,
+                                                2 * progids->allocated * sizeof(WCHAR*));
+        if (!new_progids) return FALSE;
         progids->allocated *= 2;
-        progids->progids = RtlReAllocateHeap(GetProcessHeap(), 0, progids->progids, progids->allocated * sizeof(WCHAR*));
+        progids->progids = new_progids;
     }
 
     if (!(progids->progids[progids->num] = xmlstrdupW(progid))) return FALSE;




More information about the wine-cvs mailing list