[Core] Exit code 1 on abnormal stop (#388)

This commit is contained in:
Caleb Johnson 2016-10-05 05:43:42 -05:00 committed by Twentysix
parent 35fd351b6e
commit 04f121902b

7
red.py
View File

@ -412,10 +412,12 @@ def main():
yield from bot.connect() yield from bot.connect()
if __name__ == '__main__': if __name__ == '__main__':
error = False
loop = asyncio.get_event_loop() loop = asyncio.get_event_loop()
try: try:
loop.run_until_complete(main()) loop.run_until_complete(main())
except discord.LoginFailure: except discord.LoginFailure:
error = True
logger.error(traceback.format_exc()) logger.error(traceback.format_exc())
choice = input("Invalid login credentials. " choice = input("Invalid login credentials. "
"If they worked before Discord might be having temporary " "If they worked before Discord might be having temporary "
@ -427,8 +429,13 @@ if __name__ == '__main__':
shutil.copy('data/red/settings.json', shutil.copy('data/red/settings.json',
'data/red/settings-{}.bak'.format(int(time.time()))) 'data/red/settings-{}.bak'.format(int(time.time())))
os.remove('data/red/settings.json') os.remove('data/red/settings.json')
except KeyboardInterrupt:
loop.run_until_complete(bot.logout())
except: except:
error = True
logger.error(traceback.format_exc()) logger.error(traceback.format_exc())
loop.run_until_complete(bot.logout()) loop.run_until_complete(bot.logout())
finally: finally:
loop.close() loop.close()
if error:
exit(1)