From: parente Date: Thu, 10 May 2007 21:18:11 +0000 (+0000) Subject: * registry.py: Fixed bug #436982 again (Patch from Eitan) X-Git-Tag: AT_SPI2_ATK_2_12_0~825 X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fat-spi2-atk.git;a=commitdiff_plain;h=d86f078374835bc5ffbf9c37a513cab3fb823821 * registry.py: Fixed bug #436982 again (Patch from Eitan) git-svn-id: http://svn.gnome.org/svn/at-spi/trunk@924 e2bd861d-eb25-0410-b326-f6ed22b6b98c --- diff --git a/pyatspi/ChangeLog b/pyatspi/ChangeLog index ef387f0..8b77833 100644 --- a/pyatspi/ChangeLog +++ b/pyatspi/ChangeLog @@ -1,3 +1,7 @@ +2007-05-10 Peter Parente + + * registry.py: Fixed bug #436982 again (Patch from Eitan) + 2007-05-09 Peter Parente * registry.py: Corrected patch for bug #436982 so it works with diff --git a/pyatspi/registry.py b/pyatspi/registry.py index eeed2b3..396c721 100644 --- a/pyatspi/registry.py +++ b/pyatspi/registry.py @@ -347,22 +347,17 @@ class Registry(object): i = gobject.idle_add(releaseGIL) # enter the main loop - exc = None try: bonobo.main() - except Exception, e: - # re-raise the keyboard interrupt later - exc = e - - # clear all observers - for name, ob in self.observers.items(): - ob.unregister(self.reg, name) - if gil: - gobject.source_remove(i) - exc = releaseGIL.keyboard_exception - if exc is not None: - # raise an keyboard exception we may have gotten earlier - raise exc + finally: + # clear all observers + for name, ob in self.observers.items(): + ob.unregister(self.reg, name) + if gil: + gobject.source_remove(i) + if releaseGIL.keyboard_exception is not None: + # raise an keyboard exception we may have gotten earlier + raise releaseGIL.keyboard_exception def stop(self, *args): '''Quits the main loop.'''