Module: wine Branch: master Commit: cda63b8a3820de7864c663ab79d47c431eb9038f URL: http://source.winehq.org/git/wine.git/?a=commit;h=cda63b8a3820de7864c663ab79...
Author: Hans Leidekker hans@codeweavers.com Date: Tue Oct 11 11:02:41 2011 +0200
msi: Don't attempt to patch files if the component action resolves to anything other than INSTALLSTATE_LOCAL.
---
dlls/msi/files.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/dlls/msi/files.c b/dlls/msi/files.c index 210e012..c6282f7 100644 --- a/dlls/msi/files.c +++ b/dlls/msi/files.c @@ -497,6 +497,7 @@ UINT ACTION_PatchFiles( MSIPACKAGE *package ) LIST_FOR_EACH_ENTRY( patch, &package->filepatches, MSIFILEPATCH, entry ) { MSIFILE *file = patch->File; + MSICOMPONENT *comp = file->Component;
rc = msi_load_media_info( package, patch->Sequence, mi ); if (rc != ERROR_SUCCESS) @@ -504,7 +505,8 @@ UINT ACTION_PatchFiles( MSIPACKAGE *package ) ERR("Unable to load media info for %s (%u)\n", debugstr_w(file->File), rc); return ERROR_FUNCTION_FAILED; } - if (!file->Component->Enabled) continue; + comp->Action = msi_get_component_action( package, comp ); + if (!comp->Enabled || comp->Action != INSTALLSTATE_LOCAL) continue;
if (!patch->IsApplied) {