Hans Leidekker : msi: Set REINSTALL property when the product is already installed and the command line is empty .

Alexandre Julliard julliard at winehq.org
Wed Sep 2 09:31:10 CDT 2009


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

Author: Hans Leidekker <hans at meelstraat.net>
Date:   Wed Sep  2 11:43:45 2009 +0200

msi: Set REINSTALL property when the product is already installed and the command line is empty.

---

 dlls/msi/action.c |    9 +++++++++
 1 files changed, 9 insertions(+), 0 deletions(-)

diff --git a/dlls/msi/action.c b/dlls/msi/action.c
index c824904..85d95a6 100644
--- a/dlls/msi/action.c
+++ b/dlls/msi/action.c
@@ -789,6 +789,9 @@ UINT MSI_InstallPackage( MSIPACKAGE *package, LPCWSTR szPackagePath,
     static const WCHAR szUILevel[] = {'U','I','L','e','v','e','l',0};
     static const WCHAR szAction[] = {'A','C','T','I','O','N',0};
     static const WCHAR szInstall[] = {'I','N','S','T','A','L','L',0};
+    static const WCHAR szReinstall[] = {'R','E','I','N','S','T','A','L','L',0};
+    static const WCHAR szInstalled[] = {'I','n','s','t','a','l','l','e','d',0};
+    static const WCHAR szAll[] = {'A','L','L',0};
 
     MSI_SetPropertyW(package, szAction, szInstall);
 
@@ -837,6 +840,12 @@ UINT MSI_InstallPackage( MSIPACKAGE *package, LPCWSTR szPackagePath,
     msi_apply_transforms( package );
     msi_apply_patches( package );
 
+    if (!szCommandLine && msi_get_property_int( package, szInstalled, 0 ))
+    {
+        TRACE("setting reinstall property\n");
+        MSI_SetPropertyW( package, szReinstall, szAll );
+    }
+
     /* properties may have been added by a transform */
     msi_clone_properties( package );
     msi_set_context( package );




More information about the wine-cvs mailing list