diff --git a/frontends/src/jp/base.py b/frontends/src/jp/base.py index 08da2335..d6159214 100644 --- a/frontends/src/jp/base.py +++ b/frontends/src/jp/base.py @@ -249,16 +249,16 @@ class Jp(object): def run(self, args=None): self.args = self.parser.parse_args(args) - self.args.func() - if self._need_loop or self._auto_loop: - self._start_loop() + try: + self.args.func() + if self._need_loop or self._auto_loop: + self._start_loop() + except KeyboardInterrupt: + log.info(_("User interruption: good bye")) def _start_loop(self): self.loop = GLib.MainLoop() - try: - self.loop.run() - except KeyboardInterrupt: - log.info(_("User interruption: good bye")) + self.loop.run() def stop_loop(self): try: