Module: wine Branch: master Commit: 598c5426070d33715c630b98045f05448b35d367 URL: http://source.winehq.org/git/wine.git/?a=commit;h=598c5426070d33715c630b9804...
Author: Hans Leidekker hans@codeweavers.com Date: Tue Feb 16 11:44:47 2010 +0100
msi: Get rid of ACTION_VerifyComponentForAction.
---
dlls/msi/action.c | 61 +++++++++++++++++++++------------------------------ dlls/msi/files.c | 16 +++++-------- dlls/msi/font.c | 10 +++----- dlls/msi/helpers.c | 11 --------- dlls/msi/msipriv.h | 1 - 5 files changed, 35 insertions(+), 64 deletions(-)
diff --git a/dlls/msi/action.c b/dlls/msi/action.c index 3d6b5c1..f9823fe 100644 --- a/dlls/msi/action.c +++ b/dlls/msi/action.c @@ -951,7 +951,7 @@ UINT msi_create_component_directories( MSIPACKAGE *package ) /* create all the folders required by the components are going to install */ LIST_FOR_EACH_ENTRY( comp, &package->components, MSICOMPONENT, entry ) { - if (!ACTION_VerifyComponentForAction( comp, INSTALLSTATE_LOCAL)) + if (comp->ActionRequest != INSTALLSTATE_LOCAL) continue; msi_create_directory( package, comp->Directory ); } @@ -2231,16 +2231,12 @@ static UINT ITERATE_WriteRegistryValues(MSIRECORD *row, LPVOID param) if (!comp) return ERROR_SUCCESS;
- if (!ACTION_VerifyComponentForAction( comp, INSTALLSTATE_LOCAL)) + if (comp->ActionRequest != INSTALLSTATE_LOCAL) { - TRACE("Skipping write due to disabled component %s\n", - debugstr_w(component)); - + TRACE("Component not scheduled for installation: %s\n", debugstr_w(component)); comp->Action = comp->Installed; - return ERROR_SUCCESS; } - comp->Action = INSTALLSTATE_LOCAL;
name = MSI_RecordGetString(row, 4); @@ -2704,8 +2700,8 @@ static UINT ACTION_ProcessComponents(MSIPACKAGE *package) debugstr_w(comp->FullKeypath), comp->RefCount);
- if (ACTION_VerifyComponentForAction( comp, INSTALLSTATE_LOCAL) || - ACTION_VerifyComponentForAction( comp, INSTALLSTATE_SOURCE)) + if (comp->ActionRequest == INSTALLSTATE_LOCAL || + comp->ActionRequest == INSTALLSTATE_SOURCE) { if (!comp->FullKeypath) continue; @@ -2771,7 +2767,7 @@ static UINT ACTION_ProcessComponents(MSIPACKAGE *package) } RegCloseKey(hkey); } - else if (ACTION_VerifyComponentForAction(comp, INSTALLSTATE_ABSENT)) + else if (comp->ActionRequest == INSTALLSTATE_ABSENT) { if (package->Context == MSIINSTALLCONTEXT_MACHINE) MSIREG_DeleteUserDataComponentKey(comp->ComponentId, szLocalSid); @@ -2867,15 +2863,12 @@ static UINT ITERATE_RegisterTypeLibraries(MSIRECORD *row, LPVOID param) if (!comp) return ERROR_SUCCESS;
- if (!ACTION_VerifyComponentForAction( comp, INSTALLSTATE_LOCAL)) + if (comp->ActionRequest != INSTALLSTATE_LOCAL) { - TRACE("Skipping typelib reg due to disabled component\n"); - + TRACE("Component not scheduled for installation: %s\n", debugstr_w(component)); comp->Action = comp->Installed; - return ERROR_SUCCESS; } - comp->Action = INSTALLSTATE_LOCAL;
file = get_loaded_file( package, comp->KeyPath ); @@ -2979,10 +2972,9 @@ static UINT ITERATE_UnregisterTypeLibraries( MSIRECORD *row, LPVOID param ) if (!comp) return ERROR_SUCCESS;
- if (!ACTION_VerifyComponentForAction( comp, INSTALLSTATE_ABSENT )) + if (comp->ActionRequest != INSTALLSTATE_ABSENT) { - TRACE("Skipping, component is not scheduled for uninstall\n"); - + TRACE("Component not scheduled for removal %s\n", debugstr_w(component)); comp->Action = comp->Installed; return ERROR_SUCCESS; } @@ -3071,10 +3063,9 @@ static UINT ITERATE_CreateShortcuts(MSIRECORD *row, LPVOID param) if (!comp) return ERROR_SUCCESS;
- if (!ACTION_VerifyComponentForAction( comp, INSTALLSTATE_LOCAL )) + if (comp->ActionRequest != INSTALLSTATE_LOCAL) { - TRACE("Skipping shortcut creation due to disabled component\n"); - + TRACE("Component not scheduled for installation %s\n", debugstr_w(component)); comp->Action = comp->Installed; return ERROR_SUCCESS; } @@ -3208,10 +3199,9 @@ static UINT ITERATE_RemoveShortcuts( MSIRECORD *row, LPVOID param ) if (!comp) return ERROR_SUCCESS;
- if (!ACTION_VerifyComponentForAction( comp, INSTALLSTATE_ABSENT )) + if (comp->ActionRequest != INSTALLSTATE_ABSENT) { - TRACE("Skipping, component not scheduled for uninstall\n"); - + TRACE("Component not scheduled for removal %s\n", debugstr_w(component)); comp->Action = comp->Installed; return ERROR_SUCCESS; } @@ -3626,17 +3616,15 @@ static UINT ITERATE_WriteIniValues(MSIRECORD *row, LPVOID param)
component = MSI_RecordGetString(row, 8); comp = get_loaded_component(package,component); + if (!comp) + return ERROR_SUCCESS;
- if (!ACTION_VerifyComponentForAction( comp, INSTALLSTATE_LOCAL)) + if (comp->ActionRequest != INSTALLSTATE_LOCAL) { - TRACE("Skipping ini file due to disabled component %s\n", - debugstr_w(component)); - + TRACE("Component not scheduled for installation %s\n", debugstr_w(component)); comp->Action = comp->Installed; - return ERROR_SUCCESS; } - comp->Action = INSTALLSTATE_LOCAL;
identifier = MSI_RecordGetString(row,1); @@ -4490,14 +4478,15 @@ static UINT ITERATE_PublishComponent(MSIRECORD *rec, LPVOID param)
component = MSI_RecordGetString(rec,3); comp = get_loaded_component(package,component); + if (!comp) + return ERROR_SUCCESS;
- if (!ACTION_VerifyComponentForAction( comp, INSTALLSTATE_LOCAL ) && - !ACTION_VerifyComponentForAction( comp, INSTALLSTATE_SOURCE ) && - !ACTION_VerifyComponentForAction( comp, INSTALLSTATE_ADVERTISED )) + if (comp->ActionRequest != INSTALLSTATE_LOCAL && + comp->ActionRequest != INSTALLSTATE_SOURCE && + comp->ActionRequest != INSTALLSTATE_ADVERTISED) { - TRACE("Skipping: Component %s not scheduled for install\n", - debugstr_w(component)); - + TRACE("Component not scheduled for installation %s\n", debugstr_w(component)); + comp->Action = comp->Installed; return ERROR_SUCCESS; }
diff --git a/dlls/msi/files.c b/dlls/msi/files.c index b7af4d3..d641950 100644 --- a/dlls/msi/files.c +++ b/dlls/msi/files.c @@ -108,7 +108,7 @@ static void schedule_install_files(MSIPACKAGE *package)
LIST_FOR_EACH_ENTRY(file, &package->files, MSIFILE, entry) { - if (!ACTION_VerifyComponentForAction(file->Component, INSTALLSTATE_LOCAL)) + if (file->Component->ActionRequest != INSTALLSTATE_LOCAL) { TRACE("File %s is not scheduled for install\n", debugstr_w(file->File));
@@ -358,19 +358,15 @@ static UINT ITERATE_DuplicateFiles(MSIRECORD *row, LPVOID param)
component = MSI_RecordGetString(row,2); comp = get_loaded_component(package,component); + if (!comp) + return ERROR_SUCCESS;
- if (!ACTION_VerifyComponentForAction( comp, INSTALLSTATE_LOCAL )) + if (comp->ActionRequest != INSTALLSTATE_LOCAL) { - TRACE("Skipping copy due to disabled component %s\n", - debugstr_w(component)); - - /* the action taken was the same as the current install state */ - if (comp) - comp->Action = comp->Installed; - + TRACE("Component not scheduled for installation %s\n", debugstr_w(component)); + comp->Action = comp->Installed; return ERROR_SUCCESS; } - comp->Action = INSTALLSTATE_LOCAL;
file_key = MSI_RecordGetString(row,3); diff --git a/dlls/msi/font.c b/dlls/msi/font.c index 73ebe20..1b2c3c7 100644 --- a/dlls/msi/font.c +++ b/dlls/msi/font.c @@ -201,10 +201,9 @@ static UINT ITERATE_RegisterFonts(MSIRECORD *row, LPVOID param) return ERROR_SUCCESS; }
- /* check to make sure that component is installed */ - if (!ACTION_VerifyComponentForAction( file->Component, INSTALLSTATE_LOCAL)) + if (file->Component->ActionRequest != INSTALLSTATE_LOCAL) { - TRACE("Skipping: Component not scheduled for install\n"); + TRACE("Component not scheduled for installation\n"); return ERROR_SUCCESS; }
@@ -280,10 +279,9 @@ static UINT ITERATE_UnregisterFonts( MSIRECORD *row, LPVOID param ) return ERROR_SUCCESS; }
- /* check to make sure that component is uninstalled */ - if (!ACTION_VerifyComponentForAction( file->Component, INSTALLSTATE_ABSENT )) + if (file->Component->ActionRequest != INSTALLSTATE_ABSENT) { - TRACE("Skipping: Component not scheduled for uninstall\n"); + TRACE("Component not scheduled for removal\n"); return ERROR_SUCCESS; }
diff --git a/dlls/msi/helpers.c b/dlls/msi/helpers.c index e3009f7..df25c3e 100644 --- a/dlls/msi/helpers.c +++ b/dlls/msi/helpers.c @@ -604,17 +604,6 @@ void ui_actiondata(MSIPACKAGE *package, LPCWSTR action, MSIRECORD * record) msiobj_release(&row->hdr); }
-BOOL ACTION_VerifyComponentForAction( const MSICOMPONENT* comp, INSTALLSTATE check ) -{ - if (!comp) - return FALSE; - - if (comp->ActionRequest == check) - return TRUE; - else - return FALSE; -} - BOOL ACTION_VerifyFeatureForAction( const MSIFEATURE* feature, INSTALLSTATE check ) { if (!feature) diff --git a/dlls/msi/msipriv.h b/dlls/msi/msipriv.h index 8022afc..8c77a9f 100644 --- a/dlls/msi/msipriv.h +++ b/dlls/msi/msipriv.h @@ -982,7 +982,6 @@ extern void msi_free_action_script(MSIPACKAGE *package, UINT script); extern LPWSTR build_icon_path(MSIPACKAGE *, LPCWSTR); extern LPWSTR build_directory_name(DWORD , ...); extern BOOL create_full_pathW(const WCHAR *path); -extern BOOL ACTION_VerifyComponentForAction(const MSICOMPONENT*, INSTALLSTATE); extern BOOL ACTION_VerifyFeatureForAction(const MSIFEATURE*, INSTALLSTATE); extern void reduce_to_longfilename(WCHAR*); extern LPWSTR create_component_advertise_string(MSIPACKAGE*, MSICOMPONENT*, LPCWSTR);