Hans Leidekker : msi: Set the install level to the maximum if the requested install state is not the default .
Alexandre Julliard
julliard at winehq.org
Fri Dec 24 09:26:19 CST 2010
Module: wine
Branch: master
Commit: 03a3292ffed984b1e5d4f367c2aa1b2c643ec554
URL: http://source.winehq.org/git/wine.git/?a=commit;h=03a3292ffed984b1e5d4f367c2aa1b2c643ec554
Author: Hans Leidekker <hans at codeweavers.com>
Date: Fri Dec 24 15:31:26 2010 +0100
msi: Set the install level to the maximum if the requested install state is not the default.
---
dlls/msi/msi.c | 8 ++++++++
1 files changed, 8 insertions(+), 0 deletions(-)
diff --git a/dlls/msi/msi.c b/dlls/msi/msi.c
index e66585c..266bd89 100644
--- a/dlls/msi/msi.c
+++ b/dlls/msi/msi.c
@@ -684,6 +684,8 @@ UINT WINAPI MsiConfigureProductExW(LPCWSTR szProduct, int iInstallLevel,
static const WCHAR szInstalled[] = {
' ','I','n','s','t','a','l','l','e','d','=','1',0};
+ static const WCHAR szInstallLevel[] = {
+ ' ','I','N','S','T','A','L','L','L','E','V','E','L','=','3','2','7','6','7',0};
static const WCHAR szRemoveAll[] = {
' ','R','E','M','O','V','E','=','A','L','L',0};
static const WCHAR szMachine[] = {
@@ -715,6 +717,9 @@ UINT WINAPI MsiConfigureProductExW(LPCWSTR szProduct, int iInstallLevel,
if (szCommandLine)
sz += lstrlenW(szCommandLine);
+ if (eInstallState != INSTALLSTATE_DEFAULT)
+ sz += lstrlenW(szInstallLevel);
+
if (eInstallState == INSTALLSTATE_ABSENT)
sz += lstrlenW(szRemoveAll);
@@ -732,6 +737,9 @@ UINT WINAPI MsiConfigureProductExW(LPCWSTR szProduct, int iInstallLevel,
if (szCommandLine)
lstrcpyW(commandline,szCommandLine);
+ if (eInstallState != INSTALLSTATE_DEFAULT)
+ lstrcatW(commandline, szInstallLevel);
+
if (eInstallState == INSTALLSTATE_ABSENT)
lstrcatW(commandline, szRemoveAll);
More information about the wine-cvs
mailing list