msi: Fix a memory leak (valgrind).
authorHans Leidekker <hans@codeweavers.com>
Thu, 10 Mar 2011 11:45:41 +0000 (12:45 +0100)
committerAlexandre Julliard <julliard@winehq.org>
Thu, 10 Mar 2011 13:10:16 +0000 (14:10 +0100)
dlls/msi/files.c

index 4736fcec18e4080a0eec05a1eddce1c992c0eb40..7f71d1a497727e3625b229365d641760d79f0fcc 100644 (file)
@@ -997,7 +997,6 @@ static UINT ITERATE_RemoveFiles(MSIRECORD *row, LPVOID param)
     UINT ret = ERROR_SUCCESS;
 
     component = MSI_RecordGetString(row, 2);
-    filename = strdupW( MSI_RecordGetString(row, 3) );
     dirprop = MSI_RecordGetString(row, 4);
     install_mode = MSI_RecordGetInteger(row, 5);
 
@@ -1026,7 +1025,7 @@ static UINT ITERATE_RemoveFiles(MSIRECORD *row, LPVOID param)
         return ERROR_OUTOFMEMORY;
 
     size = 0;
-    if (filename)
+    if ((filename = strdupW( MSI_RecordGetString(row, 3) )))
     {
         reduce_to_longfilename( filename );
         size = lstrlenW( filename );