Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Errors and lags in VirtualBox Create new VM dialog #2089

Closed
nvaccessAuto opened this issue Feb 8, 2012 · 5 comments
Closed

Errors and lags in VirtualBox Create new VM dialog #2089

nvaccessAuto opened this issue Feb 8, 2012 · 5 comments

Comments

@nvaccessAuto
Copy link

Reported by Ahiiron on 2012-02-08 00:18
NVDA main-4970, VirtualBox 4.0.16, Win7x64

STR:

  1. CTRL-N for new VM dialog;
  2. Space/enter on Next;
  3. When VM Name appears, NVDA plays error sound and lags before speaking the field name.
  4. Tab and shift-tab, more errors. Below is log output: Seems to just go on forever with this.
    File "baseObject.pyc", line 110, in getPropertyViaCache
    File "NVDAObjects\IAccessible__init
    _.pyc", line 1255, in get_presentationType
    File "baseObject.pyc", line 34, in get
    File "baseObject.pyc", line 110, in getPropertyViaCache
    File "NVDAObjects__init
    .pyc", line 532, in get_presentationType
    File "baseObject.pyc", line 34, in get
    File "baseObject.pyc", line 110, in getPropertyViaCache
    File "NVDAObjects\IAccessible__init
    .pyc", line 1373, in get_description
    File "baseObject.pyc", line 34, in get
    File "baseObject.pyc", line 110, in getPropertyViaCache
    File "NVDAObjects__init
    .pyc", line 590, in get_simpleNext
    File "NVDAObjects__init
    _.pyc", line 582, in findSimpleNext
    File "baseObject.pyc", line 34, in get
    File "baseObject.pyc", line 110, in getPropertyViaCache
    File "NVDAObjects\IAccessible__init
    .pyc", line 888, in get_parent
    File "baseObject.pyc", line 34, in get
    File "baseObject.pyc", line 110, in getPropertyViaCache
    File "NVDAObjects\IAccessible__init
    .pyc", line 1318, in get_parent
    File "baseObject.pyc", line 34, in get
    File "baseObject.pyc", line 110, in getPropertyViaCache
    File "NVDAObjects\window__init
    .pyc", line 260, in get_parent
    File "NVDAObjects__init
    _.pyc", line 72, in call
    File "NVDAObjects\IAccessible__init__.pyc", line 374, in findOverlayClasses
    File "baseObject.pyc", line 34, in get
    File "baseObject.pyc", line 110, in getPropertyViaCache
    File "NVDAObjects\IAccessible__init
    _.pyc", line 741, in get_IAccessibleRole
    File "comtypes__init
    _.pyc", line 795, in call
    ArgumentError: argument 1: <type 'exceptions.RuntimeError'>: maximum recursion depth exceeded
@nvaccessAuto
Copy link
Author

Comment 1 by Ahiiron on 2012-02-08 00:28
Other info:

Also tested with NVDA 2011.3 and 2012.1b1. The issue doesn't occur with 2011.3, but does occur with 2012.1B1. To ensure things are truly not working, all GlobalPlugins and userConfigs were removed and tested with clean installs.

@nvaccessAuto
Copy link
Author

Comment 3 by jteh on 2012-02-08 00:51
Please attach a full log file with log level set to input/output. There is info I'm missing here.

@nvaccessAuto
Copy link
Author

Comment 4 by jteh on 2012-02-14 01:29
Regression caused by 797c414.

This occurs because there is a grouping above the controls which uses NVDAObjects.IAccessible.Groupbox. Groupbox.description now uses simpleNext, but simpleNext loops on those groupings. The loop is caused by code in IAccessible.parent which forces the window root to be the parent when it is deliberately skipped (37888f3).

There are several possible solutions:

  1. Restrict the Groupbox NVDAObject so it only works on certain group boxes.
  2. Don't use simpleNext in Groupbox.description, instead traversing window root objects directly.
  3. Restrict 37888f3 so it only gets used where absolutely necessary.
    2 is least likely to cause regressions, though I wonder if 1 or 3 is the more correct solution to avoid future issues like this.
    Changes:
    Milestone changed from None to 2012.1

@nvaccessAuto
Copy link
Author

Comment 5 by jteh on 2012-02-14 04:41
Fixed in 280aaca. I implemented solution 2, as simpleNext is likely to cause more problems here. I still think we should consider the other solutions in future, but that is a different issue.
Changes:
State: closed

@nvaccessAuto
Copy link
Author

Comment 6 by Ahiiron on 2012-02-15 07:15
Excellent! Confirmed fixed in main-4992

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant