summaryrefslogtreecommitdiff
path: root/desktop/source/app/app.cxx
diff options
context:
space:
mode:
authorJan Holesovsky <kendy@suse.cz>2010-11-08 16:17:47 +0100
committerJan Holesovsky <kendy@suse.cz>2010-11-08 16:21:04 +0100
commit8c2f066e018635a74eb3b388c44ac0a2670b4bfc (patch)
tree567380c5fa11c8701bea3bc2dc807ae63b930ef9 /desktop/source/app/app.cxx
parentb931cb786415877ac15813927a55dd36cbebd8cd (diff)
Restart soffice.bin when necessary.
In some cases, like when the migration is in progress, or when new extensions are registered, soffice.bin dies with a 'restart' me status. This implements the correct handling of this state in oosplash.bin.
Diffstat (limited to 'desktop/source/app/app.cxx')
-rw-r--r--desktop/source/app/app.cxx7
1 files changed, 7 insertions, 0 deletions
diff --git a/desktop/source/app/app.cxx b/desktop/source/app/app.cxx
index 4bef6e5b3e..9ec6e87883 100644
--- a/desktop/source/app/app.cxx
+++ b/desktop/source/app/app.cxx
@@ -1465,7 +1465,11 @@ USHORT Desktop::Exception(USHORT nError)
OfficeIPCThread::DisableOfficeIPCThread();
if( pSignalHandler )
osl_removeSignalHandler( pSignalHandler );
+
restartOnMac(false);
+ if ( m_rSplashScreen.is() )
+ m_rSplashScreen->reset();
+
_exit( ExitHelper::E_CRASH_WITH_RESTART );
}
else
@@ -1972,6 +1976,9 @@ void Desktop::Main()
if ( bRestartRequested )
{
restartOnMac(true);
+ if ( m_rSplashScreen.is() )
+ m_rSplashScreen->reset();
+
// wouldn't the solution be more clean if SalMain returns the exit code to the system?
_exit( ExitHelper::E_NORMAL_RESTART );
}