ALSA: hda - Check invalid NIDs in alc_init_jacks()

The headphone and external-mic pin NIDs can be null, and the jack input
elements should be skipped in such a case.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index 9bedca0..f5ccba0 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -1087,15 +1087,19 @@
 	unsigned int hp_nid = spec->autocfg.hp_pins[0];
 	unsigned int mic_nid = spec->ext_mic.pin;
 
-	err = alc_add_jack(codec, hp_nid, SND_JACK_HEADPHONE);
-	if (err < 0)
-		return err;
-	alc_report_jack(codec, hp_nid);
+	if (hp_nid) {
+		err = alc_add_jack(codec, hp_nid, SND_JACK_HEADPHONE);
+		if (err < 0)
+			return err;
+		alc_report_jack(codec, hp_nid);
+	}
 
-	err = alc_add_jack(codec, mic_nid, SND_JACK_MICROPHONE);
-	if (err < 0)
-		return err;
-	alc_report_jack(codec, mic_nid);
+	if (mic_nid) {
+		err = alc_add_jack(codec, mic_nid, SND_JACK_MICROPHONE);
+		if (err < 0)
+			return err;
+		alc_report_jack(codec, mic_nid);
+	}
 
 	return 0;
 }