Hans Leidekker : msi: Set feature states to the installed state if the Preselected property is not set .

Alexandre Julliard julliard at winehq.org
Wed Jul 21 10:54:58 CDT 2010


Module: wine
Branch: master
Commit: 568c7c198c8b2d6b4d507f9b4db53b62375d233f
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=568c7c198c8b2d6b4d507f9b4db53b62375d233f

Author: Hans Leidekker <hans at codeweavers.com>
Date:   Wed Jul 21 09:46:46 2010 +0200

msi: Set feature states to the installed state if the Preselected property is not set.

---

 dlls/msi/action.c |   12 ++++++++++++
 1 files changed, 12 insertions(+), 0 deletions(-)

diff --git a/dlls/msi/action.c b/dlls/msi/action.c
index 1e2af4b..8ddd0dc 100644
--- a/dlls/msi/action.c
+++ b/dlls/msi/action.c
@@ -1794,6 +1794,18 @@ UINT MSI_SetFeatureStates(MSIPACKAGE *package)
                 msi_feature_set_state(package, fl->feature, INSTALLSTATE_UNKNOWN);
         }
     }
+    else
+    {
+        LIST_FOR_EACH_ENTRY( feature, &package->features, MSIFEATURE, entry )
+        {
+            BOOL selected = feature->Level > 0 && feature->Level <= level;
+
+            if (selected && feature->Action == INSTALLSTATE_UNKNOWN)
+            {
+                 msi_feature_set_state(package, feature, feature->Installed);
+            }
+        }
+    }
 
     /*
      * now we want to enable or disable components base on feature




More information about the wine-cvs mailing list