diff options
Diffstat (limited to 'drivers/coremidi/midi_driver_coremidi.cpp')
-rw-r--r-- | drivers/coremidi/midi_driver_coremidi.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/coremidi/midi_driver_coremidi.cpp b/drivers/coremidi/midi_driver_coremidi.cpp index ed991b3d9d..87fc7612f7 100644 --- a/drivers/coremidi/midi_driver_coremidi.cpp +++ b/drivers/coremidi/midi_driver_coremidi.cpp @@ -39,8 +39,9 @@ void MIDIDriverCoreMidi::read(const MIDIPacketList *packet_list, void *read_proc_ref_con, void *src_conn_ref_con) { MIDIPacket *packet = const_cast<MIDIPacket *>(packet_list->packet); + int *device_index = static_cast<int *>(src_conn_ref_con); for (UInt32 i = 0; i < packet_list->numPackets; i++) { - receive_input_packet(packet->timeStamp, packet->data, packet->length); + receive_input_packet(*device_index, packet->timeStamp, packet->data, packet->length); packet = MIDIPacketNext(packet); } } @@ -64,7 +65,7 @@ Error MIDIDriverCoreMidi::open() { for (int i = 0; i < sources; i++) { MIDIEndpointRef source = MIDIGetSource(i); if (source) { - MIDIPortConnectSource(port_in, source, (void *)this); + MIDIPortConnectSource(port_in, source, static_cast<void *>(&i)); connected_sources.insert(i, source); } } |