After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 621985 - Traceback in unfocusedAlertAndDialogCount
Traceback in unfocusedAlertAndDialogCount
Status: RESOLVED OBSOLETE
Product: orca
Classification: Applications
Component: general
2.31.x
Other All
: Normal normal
: ---
Assigned To: Orca Maintainers
Orca Maintainers
Depends on:
Blocks:
 
 
Reported: 2010-06-18 12:16 UTC by Joanmarie Diggs (IRC: joanie)
Modified: 2012-10-05 02:35 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Joanmarie Diggs (IRC: joanie) 2010-06-18 12:16:22 UTC
From José on the orca-devel-list:


Traceback (most recent call last):
  File
"/data/software/orca/dev/lib/python2.6/site-packages/orca/generator.py",
line 248, in generate
    globalsDict[arg] = self._methodsDict[arg](obj, **args)
  File
"/data/software/orca/dev/lib/python2.6/site-packages/orca/speech_generator.py",
line 1168, in _generateUnfocusedDialogCount
    self._script.utilities.unfocusedAlertAndDialogCount(obj)
  File
"/data/software/orca/dev/lib/python2.6/site-packages/orca/script_utilities.py",
line 1441, in unfocusedAlertAndDialogCount
    if child.getRole() == pyatspi.ROLE_ALERT or \
AttributeError: 'NoneType' object has no attribute 'getRole'


Comment 1 Joanmarie Diggs (IRC: joanie) 2010-06-18 12:25:18 UTC
José, can you reliably make this problem occur? The reason I ask is that the call to child.getRole() is in a for loop which is iterating over each child in app. Therefore, child should not be None. So I can add a sanity check to make the traceback not appear, but I'd really like to know what child is (or in this case, what child was) and why it's gone away.
Comment 2 Jose Vilmar Estacio de Souza 2010-06-19 09:15:28 UTC
I can reproduce in my machine but I need two vversions of orca installed, 2.30.0, and 2.31.4pre and version 2.30.0 must be the default.

1.Restart your X environment, just log in and make sure that the orca 2.30.0 started. Note that the screen preferences of the Orca will appear.
2. Start orca 2.31.4pre.
3. Open a terminal session.
4. Start again orca 2.31.4pre in debug mode.
5. Start eclipse.
6. Quit eclipse normally.
7. Restart orca and inspect the debug output, you'll find the traceback.

Repeat all steps but before execute step 4, kill at-spi-registryd and restart orca. Goodbye unwanted tracebacks
Thanks.
Comment 3 Jose Vilmar Estacio de Souza 2010-06-21 09:00:06 UTC
Another way to reproduce.
1. killall at-spi-registryd
2. start orca 2.30.0.
3. start orca 2.31.4pre in debug mode
4. start eclipse, although I think that could be reproduced with other application.
Comment 4 Jose Vilmar Estacio de Souza 2010-06-21 09:09:12 UTC
I found in the orca.debug.out file the following messages:
  looking at text:
    line at 0 is (start=0 end=13): 'vilmar@jve: ~'
flat_review.getZonesFromAccessible (name=Terminal role=terminal)
  looking at text:
    line at 79 is (start=0 end=80): '  File "/usr/lib/pymodules/python2.6/orca/espeechfactory.py", line 439, in _getc'
    line at 80 is (start=80 end=85): 'odes
'
    line at 85 is (start=85 end=138): '    raise Exception("No code table for %s" % engine)
'
    line at 138 is (start=138 end=174): 'Exception: No code table for ibmtts
'
    line at 174 is (start=174 end=175): '
'
    line at 175 is (start=175 end=176): '
'
    line at 176 is (start=176 end=211): 'Traceback (most recent call last):
'
    line at 211 is (start=211 end=291): '  File "/usr/lib/pymodules/python2.6/orca/speech.py", line 100, in _initSpeechSe'
    line at 291 is (start=291 end=296): 'rver
'

/usr/lib/pymodules/python2.6/orca/espeechfactory.py is a file present where my old orca is installed and I am running orca 2.31.4.
What is it doing here?
Comment 5 Joanmarie Diggs (IRC: joanie) 2012-10-05 02:35:19 UTC
With respect to the originally filed bug, there is now a sanity check which will prevent the traceback. With respect to the espeechfactory stuff, that is no longer in Orca.