I seem to have evidence of a stack corruption here? Sporadic, of course. The same action, performed a second time, triggered no error.
At ArrayedCollection:do, the ‘function’ is { |item, i| this.put(i, function.value(item, i)) }
– this
should be the same in the do
method as it is in the function. But, magically, inside the function, this
has become the array index = 1 (and I have no idea what the clock is doing in there).
Just noting…? No idea how to research it.
ERROR: Message 'put' not understood.
Perhaps you misspelled 'pow', or meant to call 'put' on another receiver?
RECEIVER:
Integer 1
ARGS:
Instance of TempoClock { (0x5fdd843b4d08, gc=5C, fmt=00, flg=00, set=03)
instance variables [7]
queue : instance of Array (0x5fdd83137ec0, size=19, set=11)
ptr : RawPointer 0x5fdd83a022b0
beatsPerBar : Float 4.000000 00000000 40100000
barsPerBeat : Float 0.250000 00000000 3FD00000
baseBarBeat : Float 0.000000 00000000 00000000
baseBar : Float 0.000000 00000000 00000000
permanent : true
}
nil
PROTECTED CALL STACK:
Meta_MethodError:new 0x5fdd849f0800
arg this = DoesNotUnderstandError
arg what = nil
arg receiver = 1
Meta_DoesNotUnderstandError:new 0x5fdd849f2b40
arg this = DoesNotUnderstandError
arg receiver = 1
arg selector = put
arg args = [ a TempoClock, nil ]
Object:doesNotUnderstand 0x5fdd83d55c80
arg this = 1
arg selector = put
arg args = nil
ArrayedCollection:do 0x5fdd85fc1900
arg this = [ an OSCMessageDispatcher, a Function ]
arg function = a Function
var i = 1
Collection:collectInPlace 0x5fdd85f4c140
arg this = [ an OSCMessageDispatcher, a Function ]
arg function = a Function
FunctionList:value 0x5fdd84dadb40
arg this = a FunctionList
arg args = nil
var res = [ [ /button_10, 0.0 ], 1722.372526787, a NetAddr(127.0.0.1, 8080), 57120 ]
Main:recvOSCmessage 0x5fdd84676600
arg this = a Main
arg time = 1722.372526787
arg replyAddr = a NetAddr(127.0.0.1, 8080)
arg recvPort = 57120
arg msg = [ /button_10, 0.0 ]
hjh