Jacek Konieczny : winealsa.drv: Send MIDI events to port subscribers.

Alexandre Julliard julliard at winehq.org
Wed Feb 12 16:21:09 CST 2020


Module: wine
Branch: master
Commit: 3d57cc2863f2f9a5ace40d29317b3ff4357fd119
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=3d57cc2863f2f9a5ace40d29317b3ff4357fd119

Author: Jacek Konieczny <jajcus at jajcus.net>
Date:   Wed Feb 12 12:53:54 2020 -0600

winealsa.drv: Send MIDI events to port subscribers.

This way changes to the port connections made by other applications will be
honoured.

Signed-off-by: Jacek Konieczny <jajcus at jajcus.net>
Signed-off-by: Andrew Eikum <aeikum at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/winealsa.drv/midi.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/dlls/winealsa.drv/midi.c b/dlls/winealsa.drv/midi.c
index 879d48d824..f2fe6307bb 100644
--- a/dlls/winealsa.drv/midi.c
+++ b/dlls/winealsa.drv/midi.c
@@ -871,7 +871,7 @@ static DWORD modData(WORD wDevID, DWORD dwParam)
             snd_seq_ev_clear(&event);
             snd_seq_ev_set_direct(&event);
             snd_seq_ev_set_source(&event, port_out);
-            snd_seq_ev_set_dest(&event, MidiOutDev[wDevID].addr.client, MidiOutDev[wDevID].addr.port);
+            snd_seq_ev_set_subs(&event);
 	    
 	    switch (evt & 0xF0) {
 	    case MIDI_CMD_NOTE_OFF:
@@ -1040,8 +1040,7 @@ static DWORD modLongData(WORD wDevID, LPMIDIHDR lpMidiHdr, DWORD dwSize)
 	snd_seq_ev_clear(&event);
 	snd_seq_ev_set_direct(&event);
 	snd_seq_ev_set_source(&event, port_out);
-	snd_seq_ev_set_dest(&event, MidiOutDev[wDevID].addr.client, MidiOutDev[wDevID].addr.port);
-	TRACE("destination %d:%d\n", MidiOutDev[wDevID].addr.client, MidiOutDev[wDevID].addr.port);
+	snd_seq_ev_set_subs(&event);
 	snd_seq_ev_set_sysex(&event, lpMidiHdr->dwBufferLength + len_add, lpNewData ? lpNewData : lpData);
         EnterCriticalSection(&midiSeqLock);
 	snd_seq_event_output_direct(midiSeq, &event);




More information about the wine-cvs mailing list