Skip to content

Clean up Qt crash handlers before shutdown#20

Merged
dovvnloading merged 1 commit into
mainfrom
agent/qt-crash-handler-teardown
Jul 17, 2026
Merged

Clean up Qt crash handlers before shutdown#20
dovvnloading merged 1 commit into
mainfrom
agent/qt-crash-handler-teardown

Conversation

@dovvnloading

Copy link
Copy Markdown
Owner

Summary

  • Add an idempotent crash-handler teardown routine.
  • Remove the Qt message callback and disable faulthandler before PySide teardown.
  • Register cleanup on QApplication.aboutToQuit.
  • Add regression coverage for restoring process-global handlers.

Root cause

The CI bundle showed the Qt test suite completing all 482 tests and then exiting with status 1. Earlier main-branch logs also showed a late QObject::eventFilter() Shiboken exception during interpreter shutdown. Crash reporting installed global Python/Qt handlers but never removed them, allowing callbacks to run after Qt wrappers were being destroyed.

Validation

  • Focused crash suite: 22 passed
  • Full suite: 483 passed
  • Python compilation: passed

@dovvnloading
dovvnloading merged commit f3dbd68 into main Jul 17, 2026
6 of 7 checks passed
@dovvnloading
dovvnloading deleted the agent/qt-crash-handler-teardown branch July 17, 2026 14:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant