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

Open modals crash NVDA when exiting #13579

Closed
seanbudd opened this issue Apr 5, 2022 · 4 comments
Closed

Open modals crash NVDA when exiting #13579

seanbudd opened this issue Apr 5, 2022 · 4 comments
Labels
bug/crash component/NVDA-GUI p2 https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priority triaged Has been triaged, issue is waiting for implementation.

Comments

@seanbudd
Copy link
Member

seanbudd commented Apr 5, 2022

While gui.message.messageBox protects crashes when exiting, other modal dialogs are not protected.
Usage of ShowModal and gui.runScriptModalDialog cause crashes or undefined behaviour when exiting nvda

Steps to reproduce:

  1. On a web page, open a NVDA find dialog (NVDA+F3)
  2. Exit NVDA
  3. Note that NVDA doesn't exit and cannot exit in future, it is now in an indeterminate state

  1. Install a new copy of NVDA
  2. Wait for the usage statistics dialog to open
  3. Exit NVDA
  4. Note that NVDA crashes

  1. Change the user language of NVDA
  2. Wait for the "Restart NVDA for the language change to take affect" dialog to open
  3. Exit NVDA
  4. Note that NVDA doesn't exit and cannot exit in future, it is now in an indeterminate state

  1. Go to vision in NVDA preferences, activate screen curtain
  2. Wait for the screen curtain warning dialog to open
  3. Exit NVDA
  4. Note that NVDA doesn't exit and cannot exit in future, it is now in an indeterminate state

Actual behavior:

NVDA has crashed or partially exited, requiring a manual restart.

Expected behavior:

Exiting should be blocked until these modals are closed or handled.
A pattern like messageBox should be implemented instead.
See #13007 for suggested pattern designs.

System configuration

NVDA installed/portable/running from source:

installed and source

NVDA version:

2021.3.4, 2022.1beta3

@seanbudd seanbudd added the p2 https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priority label Apr 5, 2022
@seanbudd seanbudd added the triaged Has been triaged, issue is waiting for implementation. label Sep 8, 2022
@hwf1324
Copy link
Contributor

hwf1324 commented Jan 16, 2024

The reproduction steps provided so far do not seem to reproduce the issue.

@CyrilleB79
Copy link
Collaborator

I confirm that the restart seems OK now with the two examples in the STR.

@seanbudd, I think that you have worked again on modal dialogs and restart since this issue has been open. Could you close this issue or clarify what should still be done here if anything?

@seanbudd
Copy link
Member Author

I think while there are still instances of ShowModal and gui.runScriptModalDialog we will run into problems. Did all examples test OK? I imagine there still may be some cases not documented in the issue where using gui.runScriptModalDialog and ShowModal is causing issues.
However, we could just merge this issue with #13007

@seanbudd
Copy link
Member Author

Closing in favour of #13007

@seanbudd seanbudd closed this as not planned Won't fix, can't repro, duplicate, stale Apr 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug/crash component/NVDA-GUI p2 https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priority triaged Has been triaged, issue is waiting for implementation.
Projects
None yet
Development

No branches or pull requests

3 participants