sound(4): Don't use-after-free in midi module unload
Also, use ANSI function parameter definitions (void) while here. Reported by: Coverity CID: 1006107 Sponsored by: EMC / Isilon Storage Division
This commit is contained in:
parent
9d77679a40
commit
115b4b9421
@ -1401,7 +1401,7 @@ midi_destroy(struct snd_midi *m, int midiuninit)
|
||||
*/
|
||||
|
||||
static int
|
||||
midi_load()
|
||||
midi_load(void)
|
||||
{
|
||||
mtx_init(&midistat_lock, "midistat lock", NULL, 0);
|
||||
TAILQ_INIT(&midi_devs); /* Initialize the queue. */
|
||||
@ -1414,9 +1414,9 @@ midi_load()
|
||||
}
|
||||
|
||||
static int
|
||||
midi_unload()
|
||||
midi_unload(void)
|
||||
{
|
||||
struct snd_midi *m;
|
||||
struct snd_midi *m, *tmp;
|
||||
int retval;
|
||||
|
||||
MIDI_DEBUG(1, printf("midi_unload()\n"));
|
||||
@ -1425,7 +1425,7 @@ midi_unload()
|
||||
if (midistat_isopen)
|
||||
goto exit0;
|
||||
|
||||
TAILQ_FOREACH(m, &midi_devs, link) {
|
||||
TAILQ_FOREACH_SAFE(m, &midi_devs, link, tmp) {
|
||||
mtx_lock(&m->lock);
|
||||
if (m->busy)
|
||||
retval = EBUSY;
|
||||
|
Loading…
Reference in New Issue
Block a user