[1/2] msi: Honor msidbComponentAttributesNeverOverwrite.

Hans Leidekker hans at codeweavers.com
Fri Nov 12 06:06:48 CST 2010


See http://bugs.winehq.org/show_bug.cgi?id=22304
---
 dlls/msi/files.c |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/dlls/msi/files.c b/dlls/msi/files.c
index 47aa74f..b3a6176 100644
--- a/dlls/msi/files.c
+++ b/dlls/msi/files.c
@@ -227,6 +227,14 @@ UINT ACTION_InstallFiles(MSIPACKAGE *package)
         if (file->state != msifs_missing && !mi->is_continuous && file->state != msifs_overwrite)
             continue;
 
+        if (file->state == msifs_overwrite &&
+            (file->Component->Attributes & msidbComponentAttributesNeverOverwrite))
+        {
+            TRACE("not overwriting %s\n", debugstr_w(file->TargetPath));
+            file->state = msifs_skipped;
+            continue;
+        }
+
         if (file->Sequence > mi->last_sequence || mi->is_continuous ||
             (file->IsCompressed && !mi->is_extracted))
         {
-- 
1.7.1







More information about the wine-patches mailing list