msi: Don't check feature install level on features specified in arguments.

This commit is contained in:
Piotr Caban 2014-07-24 12:35:37 +02:00 committed by Alexandre Julliard
parent 0dff7bff9a
commit b1a4055245
1 changed files with 3 additions and 3 deletions

View File

@ -1675,7 +1675,7 @@ static BOOL process_state_property(MSIPACKAGE* package, int level,
LIST_FOR_EACH_ENTRY( feature, &package->features, MSIFEATURE, entry ) LIST_FOR_EACH_ENTRY( feature, &package->features, MSIFEATURE, entry )
{ {
if (strcmpW( property, szRemove ) && !is_feature_selected( feature, level )) if (feature->Level <= 0)
continue; continue;
if (reinstall) if (reinstall)
@ -1838,6 +1838,8 @@ UINT MSI_SetFeatureStates(MSIPACKAGE *package)
{ {
FeatureList *fl; FeatureList *fl;
if (!is_feature_selected( feature, level )) continue;
LIST_FOR_EACH_ENTRY( fl, &feature->Children, FeatureList, entry ) LIST_FOR_EACH_ENTRY( fl, &feature->Children, FeatureList, entry )
{ {
if (fl->feature->Attributes & msidbFeatureAttributesFollowParent && if (fl->feature->Attributes & msidbFeatureAttributesFollowParent &&
@ -1862,8 +1864,6 @@ UINT MSI_SetFeatureStates(MSIPACKAGE *package)
debugstr_w(feature->Feature), feature->Level, feature->Installed, debugstr_w(feature->Feature), feature->Level, feature->Installed,
feature->ActionRequest, feature->Action); feature->ActionRequest, feature->Action);
if (!is_feature_selected( feature, level )) continue;
/* features with components that have compressed files are made local */ /* features with components that have compressed files are made local */
LIST_FOR_EACH_ENTRY( cl, &feature->Components, ComponentList, entry ) LIST_FOR_EACH_ENTRY( cl, &feature->Components, ComponentList, entry )
{ {