patch-2.4.21 linux-2.4.21/drivers/sound/midibuf.c
Next file: linux-2.4.21/drivers/sound/mpu401.c
Previous file: linux-2.4.21/drivers/sound/maestro.c
Back to the patch index
Back to the overall index
- Lines: 20
- Date:
2003-06-13 07:51:36.000000000 -0700
- Orig file:
linux-2.4.20/drivers/sound/midibuf.c
- Orig date:
2001-09-30 12:26:08.000000000 -0700
diff -urN linux-2.4.20/drivers/sound/midibuf.c linux-2.4.21/drivers/sound/midibuf.c
@@ -129,15 +129,16 @@
for (dev = 0; dev < num_midis; dev++)
if (midi_devs[dev] != NULL && midi_out_buf[dev] != NULL)
{
- int ok = 1;
-
- while (DATA_AVAIL(midi_out_buf[dev]) && ok)
+ while (DATA_AVAIL(midi_out_buf[dev]))
{
+ int ok;
int c = midi_out_buf[dev]->queue[midi_out_buf[dev]->head];
restore_flags(flags); /* Give some time to others */
ok = midi_devs[dev]->outputc(dev, c);
cli();
+ if (!ok)
+ break;
midi_out_buf[dev]->head = (midi_out_buf[dev]->head + 1) % MAX_QUEUE_SIZE;
midi_out_buf[dev]->len--;
}
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)