From 951bad46e0638bd13c750fa92260dd9ccf424298 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Mon, 24 Nov 2014 08:54:30 +0100 Subject: decoder/{dsdiff,dsf,opus}: fix deadlock while seeking --- src/decoder/plugins/DsdLib.cxx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/decoder/plugins/DsdLib.cxx') diff --git a/src/decoder/plugins/DsdLib.cxx b/src/decoder/plugins/DsdLib.cxx index d7eb5f7a3..8892ed387 100644 --- a/src/decoder/plugins/DsdLib.cxx +++ b/src/decoder/plugins/DsdLib.cxx @@ -53,7 +53,7 @@ dsdlib_skip_to(Decoder *decoder, InputStream &is, offset_type offset) { if (is.IsSeekable()) - return is.Seek(offset, IgnoreError()); + return is.LockSeek(offset, IgnoreError()); if (is.GetOffset() > offset) return false; @@ -72,7 +72,7 @@ dsdlib_skip(Decoder *decoder, InputStream &is, return true; if (is.IsSeekable()) - return is.Seek(is.GetOffset() + delta, IgnoreError()); + return is.LockSeek(is.GetOffset() + delta, IgnoreError()); if (delta > 1024 * 1024) /* don't skip more than one megabyte; it would be too -- cgit v1.2.3