Handle signals differently than /quit
- do not save the config (only for roster and stuff) - do not except that resetting the curses state will work everytime
This commit is contained in:
parent
c2b673308f
commit
4a7e18cd03
1 changed files with 17 additions and 1 deletions
18
src/core.py
18
src/core.py
|
@ -392,9 +392,25 @@ class Core(object):
|
|||
def exit_from_signal(self, *args, **kwargs):
|
||||
"""
|
||||
Quit when receiving SIGHUP or SIGTERM
|
||||
|
||||
do not save the config because it is not a normal exit
|
||||
(and only roster UI things are not yet saved)
|
||||
"""
|
||||
log.debug("Either SIGHUP or SIGTERM received. Exiting…")
|
||||
self.command_quit()
|
||||
if config.get('enable_user_mood', 'true') != 'false':
|
||||
self.xmpp.plugin['xep_0107'].stop(block=False)
|
||||
if config.get('enable_user_activity', 'true') != 'false':
|
||||
self.xmpp.plugin['xep_0108'].stop(block=False)
|
||||
if config.get('enable_user_gaming', 'true') != 'false':
|
||||
self.xmpp.plugin['xep_0196'].stop(block=False)
|
||||
self.plugin_manager.disable_plugins()
|
||||
self.disconnect('')
|
||||
self.running = False
|
||||
try:
|
||||
self.reset_curses()
|
||||
except: # too bad
|
||||
pass
|
||||
sys.exit()
|
||||
|
||||
def autoload_plugins(self):
|
||||
"""
|
||||
|
|
Loading…
Reference in a new issue