Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6ed9495e authored by Jie Yang's avatar Jie Yang Committed by Takashi Iwai
Browse files

ALSA: jack: don't report input event for phantom jack



There is no input_dev for phantom jack, we should not report
input event for it, otherwise, NULL pointer dereference error
will occur.

Fixes: 2ba2dfa1 ('ALSA: hda - Update to use the new jack kctls method')
Signed-off-by: default avatarJie Yang <yang.jie@intel.com>
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent 12e180a2
Loading
Loading
Loading
Loading
+7 −4
Original line number Diff line number Diff line
@@ -339,6 +339,13 @@ void snd_jack_report(struct snd_jack *jack, int status)
	if (!jack)
		return;

	list_for_each_entry(jack_kctl, &jack->kctl_list, list)
		snd_kctl_jack_report(jack->card, jack_kctl->kctl,
					    status & jack_kctl->mask_bits);

	if (!jack->input_dev)
		return;

	for (i = 0; i < ARRAY_SIZE(jack->key); i++) {
		int testbit = SND_JACK_BTN_0 >> i;

@@ -357,10 +364,6 @@ void snd_jack_report(struct snd_jack *jack, int status)

	input_sync(jack->input_dev);

	list_for_each_entry(jack_kctl, &jack->kctl_list, list)
		snd_kctl_jack_report(jack->card, jack_kctl->kctl,
					    status & jack_kctl->mask_bits);

}
EXPORT_SYMBOL(snd_jack_report);