Mike McCormack : msi: Component attributes are bitmasks.

Alexandre Julliard julliard at wine.codeweavers.com
Fri Nov 10 05:43:58 CST 2006


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

Author: Mike McCormack <mike at codeweavers.com>
Date:   Fri Nov 10 15:38:31 2006 +0900

msi: Component attributes are bitmasks.

---

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

diff --git a/dlls/msi/action.c b/dlls/msi/action.c
index ffaa216..f5e75b3 100644
--- a/dlls/msi/action.c
+++ b/dlls/msi/action.c
@@ -1800,19 +1800,14 @@ UINT MSI_SetFeatureStates(MSIPACKAGE *pa
         {
             component = cl->component;
 
-            switch (component->Attributes)
-            {
-            case msidbComponentAttributesLocalOnly:
-                msi_component_set_state( component, INSTALLSTATE_LOCAL );
-                break;
-            case msidbComponentAttributesSourceOnly:
-                msi_component_set_state( component, INSTALLSTATE_SOURCE );
-                break;
-            case msidbComponentAttributesOptional:
+            if (component->Attributes & msidbComponentAttributesOptional)
                 msi_component_set_state( component, INSTALLSTATE_DEFAULT );
-                break;
-            default:
-                msi_component_set_state( component, INSTALLSTATE_LOCAL );
+            else
+            {
+                if (component->Attributes & msidbComponentAttributesSourceOnly)
+                    msi_component_set_state( component, INSTALLSTATE_SOURCE );
+                else
+                    msi_component_set_state( component, INSTALLSTATE_LOCAL );
             }
 
             if (component->ForceLocalState)




More information about the wine-cvs mailing list