mirror of
https://github.com/ericonr/sndio.git
synced 2024-02-18 04:45:21 -06:00
don't exit from the main loop if there are pending time outs.
Fixes midi inputs not being properly drained when they are temporarily blocked to limit input data rate
This commit is contained in:
parent
0602f18759
commit
4667f82af0
10
aucat/file.c
10
aucat/file.c
@ -24,10 +24,10 @@
|
|||||||
* the module also provides trivial timeout implementation,
|
* the module also provides trivial timeout implementation,
|
||||||
* derived from:
|
* derived from:
|
||||||
*
|
*
|
||||||
* anoncvs@moule.caoua.org:/cvs
|
* anoncvs@moule.caoua.org:/midish
|
||||||
*
|
*
|
||||||
* midish/timo.c rev 1.16
|
* midish/timo.c rev 1.18
|
||||||
* midish/mdep.c rev 1.69
|
* midish/mdep.c rev 1.71
|
||||||
*
|
*
|
||||||
* A timeout is used to schedule the call of a routine (the callback)
|
* A timeout is used to schedule the call of a routine (the callback)
|
||||||
* there is a global list of timeouts that is processed inside the
|
* there is a global list of timeouts that is processed inside the
|
||||||
@ -300,7 +300,7 @@ file_poll(void)
|
|||||||
long long delta_nsec;
|
long long delta_nsec;
|
||||||
int res;
|
int res;
|
||||||
|
|
||||||
if (LIST_EMPTY(&file_list)) {
|
if (LIST_EMPTY(&file_list) && timo_queue == NULL) {
|
||||||
#ifdef DEBUG
|
#ifdef DEBUG
|
||||||
if (debug_level >= 3)
|
if (debug_level >= 3)
|
||||||
dbg_puts("nothing to do...\n");
|
dbg_puts("nothing to do...\n");
|
||||||
@ -489,7 +489,7 @@ file_poll(void)
|
|||||||
file_del(f);
|
file_del(f);
|
||||||
f = fnext;
|
f = fnext;
|
||||||
}
|
}
|
||||||
if (LIST_EMPTY(&file_list)) {
|
if (LIST_EMPTY(&file_list) && timo_queue == NULL) {
|
||||||
#ifdef DEBUG
|
#ifdef DEBUG
|
||||||
if (debug_level >= 3)
|
if (debug_level >= 3)
|
||||||
dbg_puts("no files anymore...\n");
|
dbg_puts("no files anymore...\n");
|
||||||
|
Loading…
Reference in New Issue
Block a user