cli (base): fix exit code transmission when SystemExit is catched.
This commit is contained in:
parent
25aedf57d7
commit
8db12deaff
1 changed files with 3 additions and 3 deletions
|
|
@ -734,10 +734,10 @@ class LiberviaCli:
|
|||
self.loop = LiberviaCLILoop()
|
||||
try:
|
||||
self.loop.run(self, args, namespace)
|
||||
except SystemExit:
|
||||
except SystemExit as e:
|
||||
# The loop is stopped, but we execute it one more time to call `a_quit` which
|
||||
# will call any cleaning method including async ones.
|
||||
asyncio.get_event_loop().run_until_complete(self.a_quit())
|
||||
asyncio.get_event_loop().run_until_complete(self.a_quit(e.code))
|
||||
|
||||
@classmethod
|
||||
def run(cls):
|
||||
|
|
@ -804,7 +804,7 @@ class LiberviaCli:
|
|||
if raise_exc:
|
||||
raise QuitException
|
||||
|
||||
async def a_quit(self, exit_code=0, raise_exc=True):
|
||||
async def a_quit(self, exit_code: int=0, raise_exc=True):
|
||||
"""Execute async quit callback before actually quitting
|
||||
|
||||
This method should be prefered to ``quit``, as it executes async quit callbacks
|
||||
|
|
|
|||
Loading…
Reference in a new issue