From 5cc4a8915f5b9873c16a2c2b6465d795fb05d019 Mon Sep 17 00:00:00 2001 From: James Hawkins Date: Fri, 10 Nov 2006 13:26:38 -0800 Subject: [PATCH] msi: Fix a heap corruption bug by resizing the src string before adding to it. --- dlls/msi/files.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/dlls/msi/files.c b/dlls/msi/files.c index 38b1f8ff888..dc81e6a3114 100644 --- a/dlls/msi/files.c +++ b/dlls/msi/files.c @@ -469,8 +469,13 @@ static UINT download_remote_cabinet(MSIPACKAGE *package, struct media_info *mi) *(ptr + 1) = '\0'; ptr = strrchrW(mi->source, '\\'); + src = msi_realloc(src, (lstrlenW(src) + lstrlenW(ptr)) * sizeof(WCHAR)); + if (!src) + return ERROR_OUTOFMEMORY; + lstrcatW(src, ptr + 1); + temppath[0] = '\0'; cab = msi_download_file(src, temppath); lstrcpyW(mi->source, cab);