Fix crash/hang on tab close + shutdown, and tutorial UI bugs (found in #416 review) - #440
Merged
Conversation
Closing a tab (or quitting the app) while it had an in-flight network request could force-kill a blocked worker thread, corrupting shared networking state and hanging all future model loads. Adds local connection cancellation (RequestRegistry) and defers tab destruction until any in-flight request has actually settled. Found while reviewing PR #416.
…tabs, blank tab on finish) - Tutorial steps checked the wrong tab accessor, causing it to appear frozen and never advance - Media Clipboard/Interface Summary steps failed to highlight anything - Interface Summary painted a stray box from an unrelated empty-rect bug - Spam-clicking Next created duplicate tabs (no in-flight-load guard) - Finishing the tutorial reset the auto-loaded tab instead of closing it, leaving it permanently blank Found while reviewing PR #416.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Found these while reviewing #416, opening a fix branch off EY/MultiTabs directly since these bugs need to be resolved before that PR merges.
Crash/hang fixes:
Tutorial UI fixes:
Not fixed here, flagged separately as out of scope (confirmed pre-existing via diff against develop, not introduced by #416):
On the retry-crash bug (dangling pointer in ModelSelectionWidget): diagnosed once with a full stack trace early on, but extensively retested since — including under AddressSanitizer across multiple cycles — and unable to reproduce after the ModelTab.h changes in this branch. Not confirmed as an active blocker, noting here in case it resurfaces.
Tested manually throughout, plus an AddressSanitizer build for the retry-crash investigation.