nvda icon indicating copy to clipboard operation
nvda copied to clipboard

NVDA freezes when returning to android studio home after canceling the loading of a project

Open kianoosh-shakeri opened this issue 2 years ago • 4 comments

Steps to reproduce:

re-Run android studio after saving a project and quitting the IDE. When the progress indicator and the cancel button for the loading of the most recent project appear, press space to cancel the operation. (To return to android studio home where you can create a new project or open a project within the main layout rather than file menu)

Actual behavior:

Go to taskbar Android Studio button Android Studio pinned enter Android Studio Cancel button space NVDA freezes and keeps throwing errors every now and then

Expected behavior:

enter Android Studio Cancel button space unavailable Taskbar Welcome to Android Studio Search projects edit blank NVDA+t Welcome to Android Studio

NVDA logs, crash dumps and other attachments:

ERROR - watchdog._watcher (19:52:42.583) - watchdog (10656):
Core frozen in stack!
INFO - watchdog._watcher (19:52:42.601) - watchdog (10656):
Listing stacks for Python threads:
Python stack for thread 9544 (nvwave.playWaveFile(error.wav)):
  File "threading.pyc", line 890, in _bootstrap
  File "threading.pyc", line 926, in _bootstrap_inner
  File "threading.pyc", line 870, in run
  File "nvwave.pyc", line 458, in idle
  File "nvwave.pyc", line 468, in _idleUnbuffered
  File "nvwave.pyc", line 409, in sync
  File "winKernel.pyc", line 291, in waitForSingleObject

Python stack for thread 10688 (watchdog.CancellableCallThread.execute(<_FuncPtr object at 0x00992558>)):
  File "threading.pyc", line 890, in _bootstrap
  File "threading.pyc", line 926, in _bootstrap_inner
  File "watchdog.pyc", line 332, in run
  File "threading.pyc", line 552, in wait
  File "threading.pyc", line 296, in wait

Python stack for thread 10656 (watchdog):
  File "threading.pyc", line 890, in _bootstrap
  File "threading.pyc", line 926, in _bootstrap_inner
  File "threading.pyc", line 870, in run
  File "watchdog.pyc", line 141, in _watcher
  File "watchdog.pyc", line 62, in getFormattedStacksForAllThreads

Python stack for thread 10352 (winInputHook):
  File "threading.pyc", line 890, in _bootstrap
  File "threading.pyc", line 926, in _bootstrap_inner
  File "threading.pyc", line 870, in run
  File "winInputHook.pyc", line 79, in hookThreadFunc

Python stack for thread 2032 (UIAHandler.UIAHandler.MTAThread):
  File "threading.pyc", line 890, in _bootstrap
  File "threading.pyc", line 926, in _bootstrap_inner
  File "threading.pyc", line 870, in run
  File "UIAHandler\__init__.pyc", line 369, in MTAThreadFunc
  File "queue.pyc", line 170, in get
  File "threading.pyc", line 296, in wait

Python stack for thread 9088 (braille._BgThread):
  File "threading.pyc", line 890, in _bootstrap
  File "threading.pyc", line 926, in _bootstrap_inner
  File "threading.pyc", line 870, in run
  File "braille.pyc", line 2322, in func

Python stack for thread 10100 (synthDrivers._espeak.BgThread):
  File "threading.pyc", line 890, in _bootstrap
  File "threading.pyc", line 926, in _bootstrap_inner
  File "synthDrivers\_espeak.pyc", line 192, in run
  File "queue.pyc", line 170, in get
  File "threading.pyc", line 296, in wait

Python stack for thread 3156 (MainThread):
  File "nvda.pyw", line 390, in <module>
  File "core.pyc", line 776, in main
  File "wx\core.pyc", line 2237, in MainLoop
  File "gui\__init__.pyc", line 760, in Notify
  File "core.pyc", line 736, in run
  File "JABHandler.pyc", line 870, in pumpAll
  File "queueHandler.pyc", line 55, in flushQueue
  File "JABHandler.pyc", line 762, in event_stateChange
  File "NVDAObjects\__init__.pyc", line 84, in __call__
  File "NVDAObjects\JAB\__init__.pyc", line 258, in __init__
  File "baseObject.pyc", line 42, in __get__
  File "baseObject.pyc", line 146, in _getPropertyViaCache
  File "NVDAObjects\JAB\__init__.pyc", line 263, in _get__JABAccContextInfo
  File "JABHandler.pyc", line 455, in getAccessibleContextInfo

ERROR - eventHandler.executeEvent (19:52:48.979) - MainThread (3156):
error executing event: stateChange on <NVDAObjects.JAB.JAB object at 0x0450BB70> with extra args of {}
Traceback (most recent call last):
  File "eventHandler.pyc", line 285, in executeEvent
  File "eventHandler.pyc", line 99, in __init__
  File "eventHandler.pyc", line 108, in next
  File "NVDAObjects\__init__.pyc", line 1156, in event_stateChange
  File "speech\speech.pyc", line 445, in speakObjectProperties
  File "speech\speech.pyc", line 498, in getObjectPropertiesSpeech
  File "baseObject.pyc", line 42, in __get__
  File "baseObject.pyc", line 146, in _getPropertyViaCache
  File "NVDAObjects\JAB\__init__.pyc", line 326, in _get_states
  File "baseObject.pyc", line 42, in __get__
  File "baseObject.pyc", line 146, in _getPropertyViaCache
  File "NVDAObjects\JAB\__init__.pyc", line 323, in _get_JABStates
  File "baseObject.pyc", line 42, in __get__
  File "baseObject.pyc", line 146, in _getPropertyViaCache
  File "NVDAObjects\JAB\__init__.pyc", line 263, in _get__JABAccContextInfo
  File "JABHandler.pyc", line 455, in getAccessibleContextInfo
  File "JABHandler.pyc", line 59, in _errcheck
RuntimeError: Result 0
ERROR - eventHandler.executeEvent (19:52:49.027) - MainThread (3156):
error executing event: focusEntered on <NVDAObjects.JAB.JAB object at 0x0450B370> with extra args of {}
Traceback (most recent call last):
  File "eventHandler.pyc", line 285, in executeEvent
  File "eventHandler.pyc", line 99, in __init__
  File "eventHandler.pyc", line 108, in next
  File "NVDAObjects\__init__.pyc", line 1165, in event_focusEntered
  File "speech\speech.pyc", line 606, in speakObject
  File "speech\speech.pyc", line 649, in getObjectSpeech
  File "speech\speech.pyc", line 469, in getObjectPropertiesSpeech
  File "baseObject.pyc", line 42, in __get__
  File "baseObject.pyc", line 146, in _getPropertyViaCache
  File "NVDAObjects\JAB\__init__.pyc", line 388, in _get_positionInfo
  File "NVDAObjects\JAB\__init__.pyc", line 519, in _getJABRelationTargets
  File "JABHandler.pyc", line 587, in getAccessibleRelationSet
  File "JABHandler.pyc", line 59, in _errcheck
RuntimeError: Result 0

System configuration

NVDA installed/portable/running from source:

Installed.

NVDA version:

2022.3beta1

Windows version:

Windows 11 21H2 (10.0.22000) workstation

Name and version of other software in use when reproducing the issue:

android studio - 2021.2.1.15 for windows

Other information about your system:

            Processor: Intel(R) Core(TM) i7-7500U CPU @ 2.70GHz (4 CPUs), ~2.9GHz
               Memory: 12288MB RAM

Other questions

Does the issue still occur after restarting your computer?

It does, yes, but not all the time. It happens only every now and then

Have you tried any other versions of NVDA? If so, please report their behaviors.

No

If NVDA add-ons are disabled, is your problem still occurring?

This doesn't have to do with any add-ons according to the log

Does the issue still occur after you run the COM Registration Fixing Tool in NVDA's tools menu?

Yes

kianoosh-shakeri avatar Aug 02 '22 15:08 kianoosh-shakeri

This could be related to #13120

seanbudd avatar Aug 04 '22 06:08 seanbudd

Is this also an issue with NVDA 2022.2?

seanbudd avatar Aug 04 '22 06:08 seanbudd

This issue is not easy to reproduce. It happens on certain conditions that I'm not yet aware of, but I'll try to reproduce it with 2022.2 as well. I just tried with add-ons disabled today, with 2022.3 Beta1, and it still happens. Also, the project that I'm testing this with isn't even that big, and I don't have the XML files opened either. There are just a bunch of kotlin(.kt) files which aren't that big.

kianoosh-shakeri avatar Aug 04 '22 20:08 kianoosh-shakeri

Today I tried with NVDA version 2022.2 and the issue is still there. The error however, is a little different compared to 2022.3 Beta1. My log is below the comment text, with two errors that I got once NVDA became frozen. I have to note that sometimes, NVDA doesn't freeze instantly. It starts with some latency in speech, then if you try to make it speak the window title or navigator object, it freezes and starts throwing errors. This continues on until android studio is closed. Even switching windows doesn't unfreeze NVDA. I made sure that windows isn't frozen whatsoever using narrator; Narrator works without any issues while NVDA is frozen and all applications behave properly as expected.

As for the log for my test with NVDA2022.2, here it goes: ERROR - scriptHandler.executeScript (13:55:20.051) - MainThread (9112): error executing script: <bound method GlobalCommands.script_reportCurrentLine of <globalCommands.GlobalCommands object at 0x03759390>> with gesture 'NVDA+up arrow' Traceback (most recent call last): File "globalCommands.pyc", line 178, in script_reportCurrentLine File "documentBase.pyc", line 61, in makeTextInfo File "baseObject.pyc", line 42, in get File "baseObject.pyc", line 146, in getPropertyViaCache File "NVDAObjects\JAB_init.pyc", line 264, in _get_TextInfo File "baseObject.pyc", line 42, in get File "baseObject.pyc", line 146, in getPropertyViaCache File "NVDAObjects\JAB_init.pyc", line 261, in _get__JABAccContextInfo File "JABHandler.pyc", line 455, in getAccessibleContextInfo File "JABHandler.pyc", line 59, in _errcheck RuntimeError: Result 0

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "scriptHandler.pyc", line 216, in executeScript File "globalCommands.pyc", line 180, in script_reportCurrentLine File "documentBase.pyc", line 61, in makeTextInfo File "baseObject.pyc", line 42, in get File "baseObject.pyc", line 146, in getPropertyViaCache File "NVDAObjects\JAB_init.pyc", line 264, in _get_TextInfo File "baseObject.pyc", line 42, in get File "baseObject.pyc", line 146, in getPropertyViaCache File "NVDAObjects\JAB_init.pyc", line 261, in _get__JABAccContextInfo File "JABHandler.pyc", line 455, in getAccessibleContextInfo File "JABHandler.pyc", line 59, in _errcheck RuntimeError: Result 0 ERROR - scriptHandler.executeScript (13:55:24.063) - MainThread (9112): error executing script: <bound method GlobalCommands.script_title of <globalCommands.GlobalCommands object at 0x03759390>> with gesture 'NVDA+t' Traceback (most recent call last): File "scriptHandler.pyc", line 216, in executeScript File "globalCommands.pyc", line 2230, in script_title File "baseObject.pyc", line 42, in get File "baseObject.pyc", line 146, in getPropertyViaCache File "NVDAObjects\JAB_init.pyc", line 302, in _get_name File "baseObject.pyc", line 42, in get File "baseObject.pyc", line 146, in getPropertyViaCache File "NVDAObjects\JAB_init.pyc", line 261, in _get__JABAccContextInfo File "JABHandler.pyc", line 455, in getAccessibleContextInfo File "JABHandler.pyc", line 59, in _errcheck RuntimeError: Result 0

kianoosh-shakeri avatar Aug 05 '22 09:08 kianoosh-shakeri

@kianoosh-shakeri are you still having this issue with NVDA 2023.1 or the last alpha version of NVDA?

You can find the last alpha version for testing purpopses here: https://www.nvaccess.org/files/nvda/snapshots/

Adriani90 avatar Mar 28 '23 21:03 Adriani90

We didn't get any updates from the initial author since more than 1 year, and during the last months NVDA's performance improved alot while several issues related to freezes have been solved. I am closing as abandoned. If the issue is still occuring, please comment and we can reopen.

Adriani90 avatar Nov 27 '23 10:11 Adriani90