msi: Don't remove products if msidbUpgradeAttributesOnlyDetect is set.

Hans Leidekker hans at codeweavers.com
Fri Feb 15 09:45:04 CST 2013


---
 dlls/msi/action.c |    2 ++
 1 file changed, 2 insertions(+)

diff --git a/dlls/msi/action.c b/dlls/msi/action.c
index 5abe040..d48ecdd 100644
--- a/dlls/msi/action.c
+++ b/dlls/msi/action.c
@@ -7260,12 +7260,14 @@ static UINT ITERATE_RemoveExistingProducts( MSIRECORD *rec, LPVOID param )
         {'m','s','i','e','x','e','c',' ','/','i',' ','%','s',' ','R','E','M','O','V','E','=','%','s',0};
     MSIPACKAGE *package = param;
     const WCHAR *property = MSI_RecordGetString( rec, 7 );
+    int attrs = MSI_RecordGetInteger( rec, 5 );
     UINT len = sizeof(fmtW)/sizeof(fmtW[0]);
     WCHAR *product, *features, *cmd;
     STARTUPINFOW si;
     PROCESS_INFORMATION info;
     BOOL ret;
 
+    if (attrs & msidbUpgradeAttributesOnlyDetect) return ERROR_SUCCESS;
     if (!(product = msi_dup_property( package->db, property ))) return ERROR_SUCCESS;
 
     deformat_string( package, MSI_RecordGetString( rec, 6 ), &features );
-- 
1.7.10.4






More information about the wine-patches mailing list