浏览代码

ALSA: hda - Do zero-clear in snd_hdmi_parse_eld() itself

Instead of doing in each caller side, snd_hdmi_parse_eld() does
zero-clear of the parsed data by itself.  This is safer and simplifies
the upcoming code changes.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Takashi Iwai 9 年之前
父节点
当前提交
18014fd793
共有 2 个文件被更改,包括 1 次插入1 次删除
  1. 1 0
      sound/pci/hda/hda_eld.c
  2. 0 1
      sound/pci/hda/patch_hdmi.c

+ 1 - 0
sound/pci/hda/hda_eld.c

@@ -253,6 +253,7 @@ int snd_hdmi_parse_eld(struct hda_codec *codec, struct parsed_hdmi_eld *e,
 	int mnl;
 	int mnl;
 	int i;
 	int i;
 
 
+	memset(e, 0, sizeof(*e));
 	e->eld_ver = GRAB_BITS(buf, 0, 3, 5);
 	e->eld_ver = GRAB_BITS(buf, 0, 3, 5);
 	if (e->eld_ver != ELD_VER_CEA_861D &&
 	if (e->eld_ver != ELD_VER_CEA_861D &&
 	    e->eld_ver != ELD_VER_PARTIAL) {
 	    e->eld_ver != ELD_VER_PARTIAL) {

+ 0 - 1
sound/pci/hda/patch_hdmi.c

@@ -1570,7 +1570,6 @@ static bool hdmi_present_sense(struct hdmi_spec_per_pin *per_pin, int repoll)
 						     &eld->eld_size) < 0)
 						     &eld->eld_size) < 0)
 			eld->eld_valid = false;
 			eld->eld_valid = false;
 		else {
 		else {
-			memset(&eld->info, 0, sizeof(struct parsed_hdmi_eld));
 			if (snd_hdmi_parse_eld(codec, &eld->info, eld->eld_buffer,
 			if (snd_hdmi_parse_eld(codec, &eld->info, eld->eld_buffer,
 						    eld->eld_size) < 0)
 						    eld->eld_size) < 0)
 				eld->eld_valid = false;
 				eld->eld_valid = false;