fix(preferences): retain MIDI device labels across dropdown refreshes
This commit is contained in:
parent
25d4ad5d3b
commit
8795516124
4 changed files with 57 additions and 1 deletions
|
|
@ -2264,6 +2264,15 @@ Provide device dropdowns and refresh in Preferences, persistent default input/ou
|
|||
### Implementation status
|
||||
Implemented: a MIDI preferences tab provides editable source/destination dropdowns, device refresh, input filtering, output channel defaults and optional thru. All choices use the strict shared configuration schema and ~/.xtc.conf. Play/Record restores selected routes; missing devices reject startup without losing choices. Settings roundtrip/invalid-value, GUI discovery/refresh/persistence/missing-device checks and the full GUI suite passed. MIDI help explains host bridge exposure, channel numbering and existing note/CC defaults.
|
||||
|
||||
|
||||
Follow-up fix: MIDI dropdown labels now use dialog-owned backing strings because
|
||||
FLTK copies menu items but borrows their labels. Menus are cleared before refresh
|
||||
or string destruction. The regression test reproduces the previous heap
|
||||
use-after-free under AddressSanitizer and verifies both lists, literal names with
|
||||
slashes, selection/save, repeated refresh, offline selection retention and None.
|
||||
`test-gui-midi-labels`, `test-gui-midi-workflows`, full `test-gui` and the focused
|
||||
ASan/UBSan/leak check pass; the GUI application was rebuilt without warnings.
|
||||
|
||||
---
|
||||
|
||||
## Phase 103 — Export Selected Clips as Standard MIDI Files
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue