Commit cf139dc0 authored by Max Kellermann's avatar Max Kellermann

wavpack: don't use "isp" before initialization

The old code called can_seek() with the uninitialized pointer "isp.is". Has this ever worked? Anyway, initialize "isp" first, then call can_seek(&isp).
parent 2e822a57
......@@ -507,15 +507,12 @@ static int wavpack_streamdecode(struct decoder * decoder, InputStream *is)
InputStream is_wvc;
int open_flags = OPEN_2CH_MAX | OPEN_NORMALIZE /*| OPEN_STREAMING*/;
InputStreamPlus isp, isp_wvc;
int canseek;
if (wavpack_open_wvc(decoder, &is_wvc)) {
initInputStreamPlus(&isp_wvc, decoder, &is_wvc);
open_flags |= OPEN_WVC;
}
canseek = can_seek(&isp);
initInputStreamPlus(&isp, decoder, is);
wpc = WavpackOpenFileInputEx(&mpd_is_reader, &isp, &isp_wvc, error,
open_flags, 15);
......@@ -525,7 +522,7 @@ static int wavpack_streamdecode(struct decoder * decoder, InputStream *is)
return -1;
}
wavpack_decode(decoder, wpc, canseek, NULL);
wavpack_decode(decoder, wpc, can_seek(&isp), NULL);
WavpackCloseFile(wpc);
if (open_flags & OPEN_WVC)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment