Terminate screensaver process on lock process termination

This resolves Bug 1419
pull/2/head
Timothy Pearson 11 years ago
parent 719298b848
commit db67e0bb9c

@ -435,7 +435,10 @@ static void sigterm_handler(int)
{ {
if (!trinity_desktop_lock_in_sec_dlg) { if (!trinity_desktop_lock_in_sec_dlg) {
// Exit uncleanly // Exit uncleanly
exit(1); char tmp = 'U';
if (::write( signal_pipe[1], &tmp, 1) == -1) {
// Error handler to shut up gcc warnings
}
} }
} }
@ -531,12 +534,18 @@ void LockProcess::signalPipeSignal()
if (::read( signal_pipe[0], &tmp, 1) == -1) { if (::read( signal_pipe[0], &tmp, 1) == -1) {
// Error handler to shut up gcc warnings // Error handler to shut up gcc warnings
} }
if( tmp == 'T' ) if( tmp == 'T' ) {
quitSaver(); quitSaver();
}
else if( tmp == 'H' ) { else if( tmp == 'H' ) {
if( !mLocked ) if( !mLocked )
startLock(); startLock();
} }
else if( tmp == 'U' ) {
// Exit uncleanly
quitSaver();
exit(1);
}
} }
//--------------------------------------------------------------------------- //---------------------------------------------------------------------------

Loading…
Cancel
Save