Browse Source

ALSA: opti-miro: fix OOPS if hardware is not detected

If a hardware is not detected there is a kernel crash
due to not initialized snd_miro->aci pointer. This pointer
is initialized after detection of the opti (miro) chip.

This bug was introduced by patches to expose
ACI mikser outside the snd-miro driver.

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Krzysztof Helt 15 years ago
parent
commit
8700055e0a
1 changed files with 2 additions and 1 deletions
  1. 2 1
      sound/isa/opti9xx/miro.c

+ 2 - 1
sound/isa/opti9xx/miro.c

@@ -1229,7 +1229,8 @@ static void snd_card_miro_free(struct snd_card *card)
 	struct snd_miro *miro = card->private_data;
         
 	release_and_free_resource(miro->res_aci_port);
-	miro->aci->aci_port = 0;
+	if (miro->aci)
+		miro->aci->aci_port = 0;
 	release_and_free_resource(miro->res_mc_base);
 }