[PATCH] msi: Fix memory leak (found by Smatch)
Rico Schüller
kgbricola at web.de
Sun Dec 30 18:34:00 CST 2007
---
dlls/msi/source.c | 7 +++++++
1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/dlls/msi/source.c b/dlls/msi/source.c
index 68f94b5..62861d9 100644
--- a/dlls/msi/source.c
+++ b/dlls/msi/source.c
@@ -605,7 +605,10 @@ static UINT fill_source_list(struct list *sourcelist, HKEY sourcekey, DWORD *cou
entry->path = msi_alloc(val_size);
if (!entry->path)
+ {
+ msi_free(entry);
goto error;
+ }
lstrcpyW(entry->szIndex, name);
entry->index = atoiW(name);
@@ -614,7 +617,11 @@ static UINT fill_source_list(struct list *sourcelist, HKEY sourcekey, DWORD *cou
r = RegEnumValueW(sourcekey, index, name, &size, NULL,
NULL, (LPBYTE)entry->path, &val_size);
if (r != ERROR_SUCCESS)
+ {
+ msi_free(entry->path);
+ msi_free(entry);
goto error;
+ }
index = ++(*count);
add_source_to_list(sourcelist, entry);
--
1.5.3.3
--------------010404030201050409090409
Content-Type: text/x-diff;
name="0001-cabinet-Fix-memory-leak-found-by-Smatch.patch"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
filename="0001-cabinet-Fix-memory-leak-found-by-Smatch.patch"
More information about the wine-patches
mailing list