If snd_timer_start schedules a timer instance to be started later
and snd_timer_stop is called before the next timer interrupt,
snd_timer_stop does not remove the (not yet running) timer instance
from the active list. The patch should fix this.


Clemens


--- timer.c.orig        Sat Apr 27 17:54:59 2002
+++ timer.c     Sat Apr 27 17:48:51 2002
@@ -424,6 +424,9 @@
                                }
                        }
                }
+       } else if (timeri->flags & SNDRV_TIMER_IFLG_START) {
+               timeri->flags &= ~SNDRV_TIMER_IFLG_START;
+               list_del_init(&timeri->active_list);
        }
        spin_unlock_irqrestore(&timer->lock, flags);
        return 0;

_______________________________________________
Alsa-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-devel

Reply via email to