Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

sclang bugfix: proper handling of Open Sound Control Blob Arguments #877

Merged
merged 1 commit into from
Jun 25, 2013
Merged

Conversation

ventosus
Copy link
Contributor

Right now, only one OSC Blob argument can be read by sclang and when intermingled with other arguments it only consistently works as last argument:

works with current sclang:
/test b 0x01 -> [[0x01]]
/test ib 12 0x01 -> [12, [0x01]]

does not work with current sclang:
/test bb 0x01 0x02 -> [[0x01], [0x01]]
/test bi 0x01 12 -> [[0x01], [0x01]]

The problem is that the tag counter (msg.counter) is not increased as intended, because MsgToInt8Array clones the sc_msg_iter struct. Using a reference argument in MsgToInt8Array() fixes the problem.

does now work:
/test bb 0x01 0x02 -> [[0x01], [0x02]]
/test bi 0x01 12 -> [[0x01], 12]

Right now, only one OSC Blob argument can be read by sclang and when intermingled with other arguments it only consistently works as last argument:

works with current sclang:
/test b 0x01             -> [[0x01]]
/test ib 12 0x01         -> [12, [0x01]]

does not work with current sclang:
/test bb 0x01 0x02       -> [[0x01], [0x01]]
/test bi 0x01 12         -> [[0x01], [0x01]]

The problem is that the tag counter (msg.tag) is not increased as intended, because MsgToInt8Array clones the sc_msg_iter struct. Using a reference argument in MsgToInt8Array fixes the problem.

does now work:
/test bb 0x01 0x02       -> [[0x01], [0x02]]
/test bi 0x01 12         -> [[0x01], 12]
timblechmann added a commit that referenced this pull request Jun 25, 2013
sclang bugfix: proper handling of Open Sound Control Blob Arguments
@timblechmann timblechmann merged commit 3fd0b70 into supercollider:master Jun 25, 2013
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.

2 participants