Lazy-build RadioSetupDialog tabs to fix Wayland crash on open (#1776)#1777
Merged
Conversation
Defer construction of all tabs except the default (Radio) until first selected. Hardware-probing calls in buildSerialTab (QSerialPortInfo) and buildAudioTab (QMediaDevices) executed during the constructor were crashing on native Wayland with Qt 6.11. Lazy construction avoids these calls until the user actually navigates to those tabs, and also makes the dialog open faster. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Closed
2 tasks
ten9876
approved these changes
Apr 22, 2026
ten9876
left a comment
Collaborator
There was a problem hiding this comment.
Misidentifies root cause (real crash is libvdpau_va_gl from Packman non-free FFmpeg on Wayland — user config, not our bug), but the lazy tab pattern is a legitimate improvement on its own: faster dialog open, cleaner construction, no regressions. Audio tab will still crash for the reporter if they click it — that's a user system config issue to address separately.
|
All good now except for the audio tab crash. That is not a mis-configure but I'll create a new bug on this. The noexecstack still fails without the -DCMAKE_EXE_LINKER_FLAGS="-Wl,-z,noexecstack but it does build with it. I think we can close this now that it is tested. |
2 tasks
6 tasks
ten9876
added a commit
that referenced
this pull request
Apr 22, 2026
) Cuts a community-contribution-heavy point release. Eight community PRs landed plus three AetherClaude crash fixes. Highlights: Community: - Fix RADE RX not decoding on Windows (#1820, NF0T) - Clamp stale DAX RX backlog on macOS — fixes +1.5s FT8 DT bias (#1822, jensenpat) - Fix TCI DAX resampler crosstalk between slices (#1815, Chaosuk97) - Fix RX applet pan slider with NR active (#1799, Chaosuk97) - Fix TCI RX gain default 1.0 → 0.5 to match applet (#1811, NF0T) - Fix HAVE_SERIALPORT guard (#1812, NF0T) - Seamless ADIF logbook auto-reload (#1801, Chaosuk97) - RAC Canada band-plan corrections (#1817, VE3NEM) AetherClaude crash fixes: - Applet reorder with floating containers (#1745 → #1746) - Lazy-build RadioSetupDialog tabs, dodges Wayland FFmpeg/VDPAU crash (#1776 → #1777) - PanAdapter float-freeze — show-after-reset + direct reparent (#1668 → #1669) Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
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.
Summary
Fixes #1776
What was changed
Lazy-build RadioSetupDialog tabs to fix Wayland crash on open (#1776)
Files modified
src/gui/RadioSetupDialog.cppsrc/gui/RadioSetupDialog.hGenerated by AetherClaude (automated agent for AetherSDR)