Ensure IONode's Parent Graph Has a Minimum Channel Count #1040
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.
Fix Audio/MIDI I/O nodes appearing with zero ports
When adding Audio Inputs/Outputs or MIDI I/O nodes via the graph right-click menu, they would sometimes appear with zero ports instead of the expected defaults.
Root Cause
IONode::refreshPorts()depends on the parent graph's port count (graph->getNumPorts()), but when a new graph has no existing I/O configuration, the count is zero, resulting in IONodes with no ports.Fix
Modified
IONode::setParentGraph()to check if the parent graph has zero ports of the IONode's type. If so, it sets a sensible minimum (2 channels for audio, 1 for MIDI) before refreshing ports.Changes
setParentGraph()to ensure minimum port count on parent graphFixes #1036