summaryrefslogtreecommitdiff
path: root/desktop
diff options
context:
space:
mode:
authorJens-Heiner Rechtien <hr@openoffice.org>2004-11-26 21:29:21 +0000
committerJens-Heiner Rechtien <hr@openoffice.org>2004-11-26 21:29:21 +0000
commitf0abdf6df484da590d7fc6a4e8b0908adb5fb9a1 (patch)
tree859ef058c4d91d13849bd48053ac3c617cbdc8ba /desktop
parentc4263d6d739deea55a93c72e1835d3a8568bd2b3 (diff)
INTEGRATION: CWS sysint1 (1.3.86); FILE MERGED
2004/11/12 07:11:21 dv 1.3.86.1: #i36911# Force reboot after installing msi on Win98
Diffstat (limited to 'desktop')
-rw-r--r--desktop/win32/source/setup/setup.cpp13
1 files changed, 11 insertions, 2 deletions
diff --git a/desktop/win32/source/setup/setup.cpp b/desktop/win32/source/setup/setup.cpp
index d9035a28b588..ac046ca74a2c 100644
--- a/desktop/win32/source/setup/setup.cpp
+++ b/desktop/win32/source/setup/setup.cpp
@@ -2,9 +2,9 @@
*
* $RCSfile: setup.cpp,v $
*
- * $Revision: 1.3 $
+ * $Revision: 1.4 $
*
- * last change: $Author: kz $ $Date: 2004-06-11 17:48:28 $
+ * last change: $Author: hr $ $Date: 2004-11-26 22:29:21 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -91,6 +91,7 @@
#define PARAM_PACKAGE TEXT( "/I " )
#define PARAM_ADMIN TEXT( "/A " )
#define PARAM_TRANSFORM TEXT( " TRANSFORMS=" )
+#define PARAM_REBOOT TEXT( " REBOOT=Force" )
#define MSI_DLL TEXT( "msi.dll" )
#define ADVAPI32_DLL TEXT( "advapi32.dll" )
@@ -851,6 +852,9 @@ boolean SetupAppX::Install( long nLanguage )
nParLen += lstrlen( pDataBasePath ) + 3; // two quotes, one null
+ if ( NeedReboot() )
+ nParLen += lstrlen( PARAM_REBOOT );
+
if ( pTransform )
{
nParLen += lstrlen( PARAM_TRANSFORM );
@@ -873,6 +877,9 @@ boolean SetupAppX::Install( long nLanguage )
StringCchCat( pParams, nParLen, pDataBasePath );
StringCchCat( pParams, nParLen, TEXT( "\"" ) );
+ if ( NeedReboot() )
+ StringCchCat( pParams, nParLen, PARAM_REBOOT );
+
if ( pTransform )
{
StringCchCat( pParams, nParLen, PARAM_TRANSFORM );
@@ -1059,6 +1066,8 @@ boolean SetupAppX::CheckVersion()
else
Log( TEXT( "ERROR: Could not find InstMsiA/InstMsiW!\r\n" ) );
+ if ( bRet && IsWin9x() && ( GetMinorVersion() <= 10 ) )
+ SetRebootNeeded( true );
if ( pInstaller ) delete [] pInstaller;
}