[WINEALSA] Some midi fixes

Christian Costa titan.costa at wanadoo.fr
Tue Nov 11 16:58:56 CST 2003


Changelog :
Alsa midi fixes.

Christian Costa   titan.costa at wanadoo.fr

-------------- next part --------------
Index: midi.c
===================================================================
RCS file: /home/wine/wine/dlls/winmm/winealsa/midi.c,v
retrieving revision 1.3
diff -u -r1.3 midi.c
--- midi.c	17 Sep 2003 20:09:39 -0000	1.3
+++ midi.c	11 Nov 2003 21:46:10 -0000
@@ -647,6 +647,7 @@
     switch (MidiOutDev[wDevID].caps.wTechnology) {
     case MOD_FMSYNTH:
     case MOD_MIDIPORT:
+    case MOD_SYNTH:
         snd_seq_disconnect_to(midiSeq, port_out, MidiOutDev[wDevID].addr.client, MidiOutDev[wDevID].addr.port);
 	midiCloseSeq();
 	break;
@@ -695,6 +696,9 @@
 	    int handled = 1; /* Assume event is handled */
             snd_seq_event_t event;
             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);
 	    
 	    switch (evt & 0xF0) {
 	    case MIDI_CMD_NOTE_OFF:
@@ -755,6 +759,7 @@
 			buf[1] = d1;
 			snd_seq_ev_set_sysex(&event, sizeof(buf), buf);
 	            }
+	            break;
 		case 0x02:	/* Song Position Pointer. */
 		    {
 			BYTE buf[3];
@@ -763,6 +768,7 @@
 			buf[2] = d2;
 			snd_seq_ev_set_sysex(&event, sizeof(buf), buf);
 	            }
+		    break;
 		}
 		break;
 	    }


More information about the wine-patches mailing list