From: Alex Henrie alexhenrie24@gmail.com
--- dlls/msi/package.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/dlls/msi/package.c b/dlls/msi/package.c index 9e34b7e6351..90293a10881 100644 --- a/dlls/msi/package.c +++ b/dlls/msi/package.c @@ -1897,7 +1897,12 @@ INT MSI_ProcessMessage( MSIPACKAGE *package, INSTALLMESSAGE eMessageType, MSIREC }
template = malloc((wcslen(template_rec) + wcslen(template_prefix) + 1) * sizeof(WCHAR)); - if (!template) return ERROR_OUTOFMEMORY; + if (!template) + { + free(template_prefix); + free(template_rec); + return ERROR_OUTOFMEMORY; + }
lstrcpyW(template, template_prefix); lstrcatW(template, template_rec);