msi: Don't set the Preselected property for a full reinstall.

This commit is contained in:
Hans Leidekker 2012-12-11 14:04:16 +01:00 committed by Alexandre Julliard
parent fbd7f8813f
commit c66b78a810
2 changed files with 3 additions and 1 deletions

View File

@ -1784,7 +1784,7 @@ static BOOL process_overrides( MSIPACKAGE *package, int level )
ret |= process_state_property( package, level, szReinstall, INSTALLSTATE_UNKNOWN );
ret |= process_state_property( package, level, szAdvertise, INSTALLSTATE_ADVERTISED );
if (ret)
if (ret && !package->full_reinstall)
msi_set_property( package->db, szPreselected, szOne, -1 );
return ret;
@ -7785,6 +7785,7 @@ UINT MSI_InstallPackage( MSIPACKAGE *package, LPCWSTR szPackagePath,
{
TRACE("setting REINSTALL property to ALL\n");
msi_set_property( package->db, szReinstall, szAll, -1 );
package->full_reinstall = 1;
}
/* properties may have been added by a transform */

View File

@ -414,6 +414,7 @@ typedef struct tagMSIPACKAGE
unsigned char need_reboot_at_end : 1;
unsigned char need_reboot_now : 1;
unsigned char need_rollback : 1;
unsigned char full_reinstall : 1;
} MSIPACKAGE;
typedef struct tagMSIPREVIEW