[PATCH] ntdll: Handle RtlReAllocateHeap failure in com_class_add_progid (Coverity).
Thomas Faber
thomas.faber at reactos.org
Tue Jan 16 12:19:34 CST 2018
Signed-off-by: Thomas Faber <thomas.faber at reactos.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 323ee68fc09b..dc65e374b9ad 100644
--- a/dlls/ntdll/actctx.c
+++ b/dlls/ntdll/actctx.c
@@ -1444,6 +1444,7 @@ static DWORD parse_com_class_misc(const xmlstr_t *value)
static BOOL com_class_add_progid(const xmlstr_t *progid, struct entity *entity)
{
struct progids *progids = &entity->u.comclass.progids;
+ WCHAR **new_progids;
if (progids->allocated == 0)
{
@@ -1453,8 +1454,10 @@ static BOOL com_class_add_progid(const xmlstr_t *progid, struct entity *entity)
if (progids->allocated == progids->num)
{
+ 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;
--
2.15.1
More information about the wine-devel
mailing list