Module: wine Branch: master Commit: 58bbe5ac4c4d01de7a4d30bf20516254045ab376 URL: http://source.winehq.org/git/wine.git/?a=commit;h=58bbe5ac4c4d01de7a4d30bf20...
Author: Nikolay Sivov nsivov@codeweavers.com Date: Sun Mar 31 14:59:33 2013 +0400
msi: Free records on error paths (Coverity).
---
dlls/msi/database.c | 6 ++++++ dlls/msi/dialog.c | 1 + 2 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/dlls/msi/database.c b/dlls/msi/database.c index 9c0d346..b734031 100644 --- a/dlls/msi/database.c +++ b/dlls/msi/database.c @@ -1376,7 +1376,10 @@ static UINT merge_verify_colnames(MSIQUERY *dbview, MSIQUERY *mergeview)
r = MSI_ViewGetColumnInfo(mergeview, MSICOLINFO_NAMES, &mergerec); if (r != ERROR_SUCCESS) + { + msiobj_release(&dbrec->hdr); return r; + }
count = MSI_RecordGetFieldCount(dbrec); for (i = 1; i <= count; i++) @@ -1401,7 +1404,10 @@ static UINT merge_verify_colnames(MSIQUERY *dbview, MSIQUERY *mergeview)
r = MSI_ViewGetColumnInfo(mergeview, MSICOLINFO_TYPES, &mergerec); if (r != ERROR_SUCCESS) + { + msiobj_release(&dbrec->hdr); return r; + }
count = MSI_RecordGetFieldCount(dbrec); for (i = 1; i <= count; i++) diff --git a/dlls/msi/dialog.c b/dlls/msi/dialog.c index 1e0e23e..662d09a 100644 --- a/dlls/msi/dialog.c +++ b/dlls/msi/dialog.c @@ -3552,6 +3552,7 @@ static LRESULT msi_dialog_oncreate( HWND hwnd, LPCREATESTRUCTW cs ) if (!dialog->default_font) { dialog->default_font = strdupW(dfv); + msiobj_release( &rec->hdr ); if (!dialog->default_font) return -1; }