From: Ed Page Date: Tue, 18 May 2010 11:52:13 +0000 (-0500) Subject: Making Ctrl+C friendlier and profiling friendlier X-Git-Url: http://git.maemo.org/git/?p=watersofshiloah;a=commitdiff_plain;h=aa0e8ac26b860cad03adb0380b4701ba11f3b5db Making Ctrl+C friendlier and profiling friendlier --- diff --git a/src/mormonchannel_gtk.py b/src/mormonchannel_gtk.py index 5eafe64..c29a982 100755 --- a/src/mormonchannel_gtk.py +++ b/src/mormonchannel_gtk.py @@ -109,25 +109,25 @@ class MormonChannelProgram(hildonize.get_app_class()): @misc_utils.log_exception(_moduleLogger) def _on_destroy(self, widget = None, data = None): - self.quit() + try: + self.quit() + finally: + gtk.main_quit() def quit(self): - try: - self._save_settings() + self._save_settings() - self._index.stop() - self._store.stop() + self._index.stop() + self._store.stop() - try: - self._deviceState.close() - except AttributeError: - pass # Either None or close was removed (in Fremantle) - try: - self._osso_c.close() - except AttributeError: - pass # Either None or close was removed (in Fremantle) - finally: - gtk.main_quit() + try: + self._deviceState.close() + except AttributeError: + pass # Either None or close was removed (in Fremantle) + try: + self._osso_c.close() + except AttributeError: + pass # Either None or close was removed (in Fremantle) @misc_utils.log_exception(_moduleLogger) def _on_show_about(self, widget = None, data = None): @@ -157,6 +157,8 @@ def run(): except KeyboardInterrupt: app.quit() raise + else: + app.quit() if __name__ == "__main__":