ALSA: timer - Add NULL-check for invalid slave timer
Just to be sure. Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
0584ffa548
commit
94094c8aae
|
@ -328,6 +328,8 @@ int snd_timer_close(struct snd_timer_instance *timeri)
|
||||||
mutex_unlock(®ister_mutex);
|
mutex_unlock(®ister_mutex);
|
||||||
} else {
|
} else {
|
||||||
timer = timeri->timer;
|
timer = timeri->timer;
|
||||||
|
if (snd_BUG_ON(!timer))
|
||||||
|
goto out;
|
||||||
/* wait, until the active callback is finished */
|
/* wait, until the active callback is finished */
|
||||||
spin_lock_irq(&timer->lock);
|
spin_lock_irq(&timer->lock);
|
||||||
while (timeri->flags & SNDRV_TIMER_IFLG_CALLBACK) {
|
while (timeri->flags & SNDRV_TIMER_IFLG_CALLBACK) {
|
||||||
|
@ -353,6 +355,7 @@ int snd_timer_close(struct snd_timer_instance *timeri)
|
||||||
}
|
}
|
||||||
mutex_unlock(®ister_mutex);
|
mutex_unlock(®ister_mutex);
|
||||||
}
|
}
|
||||||
|
out:
|
||||||
if (timeri->private_free)
|
if (timeri->private_free)
|
||||||
timeri->private_free(timeri);
|
timeri->private_free(timeri);
|
||||||
kfree(timeri->owner);
|
kfree(timeri->owner);
|
||||||
|
|
Loading…
Reference in New Issue