If amdtp_stream_init() fails in amdtp_tscm_init(), the latter returns zero,
though it's supposed to return error code, which is checked inside
init_stream() in file tascam-stream.c.
Found by Linux Verification Center (linuxtesting.org) with SVACE.
Fixes: 47faeea25ef3 ("ALSA: firewire-tascam: add data block processing layer")
Signed-off-by: Murad Masimov <m.masimov@maxima.ru>
Reviewed-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Link: https://patch.msgid.link/20241101185517.1819-1-m.masimov@maxima.ru
 
        err = amdtp_stream_init(s, unit, dir, flags, fmt,
                        process_ctx_payloads, sizeof(struct amdtp_tscm));
        if (err < 0)
-               return 0;
+               return err;
 
        if (dir == AMDTP_OUT_STREAM) {
                // Use fixed value for FDF field.