GNOME Bugzilla – Bug 468636
pyspi throws corba errors from getChildAtIndex
Last modified: 2008-03-06 02:40:19 UTC
I see the following when trying to run the dogtail sniff application on Fedora 7, using dogtail and pyspi built from upstream source: [root@crobinso1 pyspi.orig]# sniff Creating logfile at /tmp/dogtail/logs/sniff_20070820-152941_debug ... Detecting distribution: Fedora (or derived distribution) GTK Accessibility Module initialized Traceback (most recent call last):
+ Trace 156660
from dogtail import tree
children = root.children
try: a = self.__accessible.getChildAtIndex (i)
spiChild = cspi.Accessible_getChildAtIndex (self.__item, i)
raise str(e) Non-fatal SPIException: type:0 source:0 "IDL:omg.org/CORBA/COMM_FAILURE:1.0"
I changed the source to print a string version of the exception (can be seen as raise str(e) above) in the interim to get useful feedback, but this change does not impact the source of the problem. Info on this bug is being tracked in: http://bugzilla.gnome.org/show_bug.cgi?id=440887 https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=245733
Created attachment 94016 [details] [review] Catch the offending exception and continue as though the call failed. The attached patch is a workaround for the problem: it catches the exception being thrown and sets the child object to NULL. This essentially causes the scan to skip this entry. sniff works fine after this patch is applied and built. This probably isn't the nicest way to go about it, but it makes things work!
Is this actually causing sniff to bail, or is it just printed in the terminal?
It blocks all pyspi use. Even though it says 'non-fatal' the exception handler doesn't differentiate and just raises the exception, causing pyspi to stop in its tracks.
Your patch seems correct, but it doesn't stop sniff from bailing due to the pyspi problem mentioned in bug #440887. :(
Committed. Thanks!
Whoops. Yeah #440887 is definitely a different error, I didn't examine the traceback close enough. I think the root of the redhat bz should be addressed now though, as it was erroring in getChildAtIndex, as was this bug.
Dogtail was running alright and I hit this error suddenly while trying to automate RealPlayer. I understand the patch but what is workaround for this issue? How do we come out of this problem.? How do we comeout (In reply to comment #6) > Whoops. Yeah #440887 is definitely a different error, I didn't examine the > traceback close enough. I think the root of the redhat bz should be addressed > now though, as it was erroring in getChildAtIndex, as was this bug.