Skip to content

v1.0.5: fix X32/M32 and WING console connections#18

Merged
johnqherman merged 5 commits into
masterfrom
v1.0.5
Jul 12, 2026
Merged

v1.0.5: fix X32/M32 and WING console connections#18
johnqherman merged 5 commits into
masterfrom
v1.0.5

Conversation

@johnqherman

Copy link
Copy Markdown
Collaborator

No description provided.

OscTransport sent requests through liblo's lo_send, which opens its own
socket with its own ephemeral source port, but listened for replies on a
separate QUdpSocket. X32/M32 and WING reply to the source port of each
request, so every reply landed on liblo's socket and was never read. The
/xinfo handshake timed out with "no response from mixer" and the client
looped reconnecting against a console that was reachable the whole time.

Serialise with liblo but send via the same QUdpSocket used to receive, so
the request's source port is the one replies come back to. Normalise the
target to IPv4 and bind AnyIPv4 to stop the ::ffff:-mapped address flip
seen during reconnection.

Add a regression test asserting a reply to the request's source port
reaches the transport; it fails against the split-socket behaviour.
CachyOS builds Qt6 with -mno-direct-extern-access, which rides the
Qt6::Platform interface target onto every translation unit. clang rejects
the flag, so clangd bailed on line 1 of every file. Drop it via .clangd;
the gcc build is unaffected.
The project ships under GPLv3 (see LICENSE), but CPACK_RPM_PACKAGE_LICENSE
still declared MIT. Correct the packaged metadata to match.
@johnqherman
johnqherman merged commit d9fb693 into master Jul 12, 2026
3 checks passed
@johnqherman
johnqherman deleted the v1.0.5 branch July 14, 2026 20:42
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