From: Abramo Bagnara Date: Sat, 19 May 2001 20:41:25 +0000 (+0000) Subject: Fixed missing initialization X-Git-Tag: v1.0.3~830 X-Git-Url: https://git.alsa-project.org/?a=commitdiff_plain;h=ecfec483a82ee9715936409c2a3e13b024700ead;p=alsa-lib.git Fixed missing initialization --- diff --git a/src/rawmidi/rawmidi.c b/src/rawmidi/rawmidi.c index 9c8ff5e2..90c0fc90 100644 --- a/src/rawmidi/rawmidi.c +++ b/src/rawmidi/rawmidi.c @@ -94,11 +94,15 @@ int snd_rawmidi_open(snd_rawmidi_t **inputp, snd_rawmidi_t **outputp, if (err < 0 || snd_config_get_string(rawmidi_conf, &name1) >= 0) { int card, dev, subdev; err = sscanf(name1, "hw:%d,%d,%d", &card, &dev, &subdev); - if (err == 3) - return snd_rawmidi_hw_open(inputp, outputp, name, card, dev, subdev, mode); + if (err == 3) { + err = snd_rawmidi_hw_open(inputp, outputp, name, card, dev, subdev, mode); + goto _init; + } err = sscanf(name1, "hw:%d,%d", &card, &dev); - if (err == 2) - return snd_rawmidi_hw_open(inputp, outputp, name, card, dev, -1, mode); + if (err == 2) { + err = snd_rawmidi_hw_open(inputp, outputp, name, card, dev, -1, mode); + goto _init; + } SNDERR("Unknown RAWMIDI %s", name1); return -ENOENT; } @@ -161,6 +165,7 @@ int snd_rawmidi_open(snd_rawmidi_t **inputp, snd_rawmidi_t **outputp, return -ENXIO; } err = open_func(inputp, outputp, name, rawmidi_conf, mode); + _init: if (err < 0) return err; if (inputp) {