diff --git a/src/decoder/plugins/DsdiffDecoderPlugin.cxx b/src/decoder/plugins/DsdiffDecoderPlugin.cxx index c005c6a88..f10f266fb 100644 --- a/src/decoder/plugins/DsdiffDecoderPlugin.cxx +++ b/src/decoder/plugins/DsdiffDecoderPlugin.cxx @@ -185,17 +185,17 @@ dsdiff_read_prop(DecoderClient *client, InputStream &is, } static void -dsdiff_handle_native_tag(InputStream &is, +dsdiff_handle_native_tag(DecoderClient *client, InputStream &is, TagHandler &handler, offset_type tagoffset, TagType type) { - if (!dsdlib_skip_to(nullptr, is, tagoffset)) + if (!dsdlib_skip_to(client, is, tagoffset)) return; struct dsdiff_native_tag metatag; - if (!decoder_read_full(nullptr, is, &metatag, sizeof(metatag))) + if (!decoder_read_full(client, is, &metatag, sizeof(metatag))) return; uint32_t length = FromBE32(metatag.size); @@ -209,7 +209,7 @@ dsdiff_handle_native_tag(InputStream &is, char *label; label = string; - if (!decoder_read_full(nullptr, is, label, (size_t)length)) + if (!decoder_read_full(client, is, label, (size_t)length)) return; string[length] = '\0'; @@ -292,11 +292,11 @@ dsdiff_read_metadata_extra(DecoderClient *client, InputStream &is, #endif if (artist_offset != 0) - dsdiff_handle_native_tag(is, handler, + dsdiff_handle_native_tag(client, is, handler, artist_offset, TAG_ARTIST); if (title_offset != 0) - dsdiff_handle_native_tag(is, handler, + dsdiff_handle_native_tag(client, is, handler, title_offset, TAG_TITLE); return true; }