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

Commit e35e9ddf authored by Markus Elfring's avatar Markus Elfring Committed by Takashi Iwai
Browse files

ALSA: hdspm: Use common error handling code in snd_hdspm_probe()



Add a jump target so that a bit of exception handling can be better reused
at the end of this function.

This issue was detected by using the Coccinelle software.

Signed-off-by: default avatarMarkus Elfring <elfring@users.sourceforge.net>
Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
parent 99dcad32
Loading
Loading
Loading
Loading
+8 −8
Original line number Diff line number Diff line
@@ -6949,10 +6949,8 @@ static int snd_hdspm_probe(struct pci_dev *pci,
	hdspm->pci = pci;

	err = snd_hdspm_create(card, hdspm);
	if (err < 0) {
		snd_card_free(card);
		return err;
	}
	if (err < 0)
		goto free_card;

	if (hdspm->io_type != MADIface) {
		snprintf(card->shortname, sizeof(card->shortname), "%s_%x",
@@ -6970,15 +6968,17 @@ static int snd_hdspm_probe(struct pci_dev *pci,
	}

	err = snd_card_register(card);
	if (err < 0) {
		snd_card_free(card);
		return err;
	}
	if (err < 0)
		goto free_card;

	pci_set_drvdata(pci, card);

	dev++;
	return 0;

free_card:
	snd_card_free(card);
	return err;
}

static void snd_hdspm_remove(struct pci_dev *pci)