James Hawkins : msi: Set the component' s initial state based on its attributes.
Module: wine Branch: refs/heads/master Commit: cae3215a6fd78446fd356cb8720dd70adc734d69 URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=cae3215a6fd78446fd356cb8... Author: James Hawkins <truiken(a)gmail.com> Date: Fri Jul 21 10:09:52 2006 -0700 msi: Set the component's initial state based on its attributes. --- dlls/msi/action.c | 21 +++++++++++++++++++-- 1 files changed, 19 insertions(+), 2 deletions(-) diff --git a/dlls/msi/action.c b/dlls/msi/action.c index d7be3b5..2479f2e 100644 --- a/dlls/msi/action.c +++ b/dlls/msi/action.c @@ -1115,8 +1115,25 @@ static MSICOMPONENT* load_component( MSI comp->KeyPath = msi_dup_record_field( row, 6 ); comp->Installed = INSTALLSTATE_ABSENT; - comp->Action = INSTALLSTATE_UNKNOWN; - comp->ActionRequest = INSTALLSTATE_UNKNOWN; + + switch (comp->Attributes) + { + case msidbComponentAttributesLocalOnly: + comp->Action = INSTALLSTATE_LOCAL; + comp->ActionRequest = INSTALLSTATE_LOCAL; + break; + case msidbComponentAttributesSourceOnly: + comp->Action = INSTALLSTATE_SOURCE; + comp->ActionRequest = INSTALLSTATE_SOURCE; + break; + case msidbComponentAttributesOptional: + comp->Action = INSTALLSTATE_LOCAL; + comp->ActionRequest = INSTALLSTATE_LOCAL; + break; + default: + comp->Action = INSTALLSTATE_UNKNOWN; + comp->ActionRequest = INSTALLSTATE_UNKNOWN; + } comp->Enabled = TRUE;
participants (1)
-
Alexandre Julliard