[4/5] msi: Release summary information on error in msi_parse_patch_summary.
Hans Leidekker
hans at codeweavers.com
Tue Apr 13 04:15:55 CDT 2010
---
dlls/msi/action.c | 7 +++++++
1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/dlls/msi/action.c b/dlls/msi/action.c
index 3322371..5043426 100644
--- a/dlls/msi/action.c
+++ b/dlls/msi/action.c
@@ -501,16 +501,23 @@ static UINT msi_parse_patch_summary( MSIPACKAGE *package, MSIDATABASE *patch_db
if (msi_check_patch_applicable( package, si ) != ERROR_SUCCESS)
{
TRACE("Patch not applicable\n");
+ msiobj_release( &si->hdr );
return ERROR_SUCCESS;
}
package->patch = msi_alloc(sizeof(MSIPATCHINFO));
if (!package->patch)
+ {
+ msiobj_release( &si->hdr );
return ERROR_OUTOFMEMORY;
+ }
package->patch->patchcode = msi_suminfo_dup_string(si, PID_REVNUMBER);
if (!package->patch->patchcode)
+ {
+ msiobj_release( &si->hdr );
return ERROR_OUTOFMEMORY;
+ }
/* enumerate the substorage */
str = msi_suminfo_dup_string( si, PID_LASTAUTHOR );
--
1.7.0.4
More information about the wine-patches
mailing list