diff options
author | Max Kellermann <max@duempel.org> | 2008-08-26 08:27:14 +0200 |
---|---|---|
committer | Max Kellermann <max@duempel.org> | 2008-08-26 08:27:14 +0200 |
commit | cf139dc012fe592d6e6d6165d536392e02dcb759 (patch) | |
tree | 38abeb3594f18a87ce55e4f16907095c0153af5f /src/inputPlugins | |
parent | 2e822a577d95c962b871bf7106b2268ac249ea30 (diff) | |
download | mpd-cf139dc012fe592d6e6d6165d536392e02dcb759.tar.gz mpd-cf139dc012fe592d6e6d6165d536392e02dcb759.tar.xz mpd-cf139dc012fe592d6e6d6165d536392e02dcb759.zip |
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).
Diffstat (limited to '')
-rw-r--r-- | src/inputPlugins/wavpack_plugin.c | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/src/inputPlugins/wavpack_plugin.c b/src/inputPlugins/wavpack_plugin.c index af4a75ebf..e4ac8b1e7 100644 --- a/src/inputPlugins/wavpack_plugin.c +++ b/src/inputPlugins/wavpack_plugin.c @@ -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) |