From: Carl Hetherington Date: Wed, 14 Dec 2016 10:54:51 +0000 (+0000) Subject: Fix missing subtitle when a frame is re-fetched. X-Git-Tag: v2.10.4-test~13 X-Git-Url: https://git.carlh.net/gitweb/?a=commitdiff_plain;h=f66e31b0cb9eff372ae943864d41e0ad0ee88daf;p=dcpomatic.git Fix missing subtitle when a frame is re-fetched. Before this we would get a subtitle at t, which would set the subtitle decoder position to t. Then a second request for this sub would result in no seek but the decoder would not re-produce the sub. --- diff --git a/src/lib/subtitle_decoder.cc b/src/lib/subtitle_decoder.cc index c59406c36..ff6f4b9da 100644 --- a/src/lib/subtitle_decoder.cc +++ b/src/lib/subtitle_decoder.cc @@ -80,7 +80,7 @@ SubtitleDecoder::give_text (ContentTimePeriod period, list } _decoded_text.push_back (ContentTextSubtitle (period, s)); - _position = period.from; + _position = period.to; } /** Get the subtitles that correspond to a given list of periods. @@ -109,7 +109,12 @@ SubtitleDecoder::get (list const & subs, list const & sp, /* Suggest to our parent decoder that it might want to seek if we haven't got what we're being asked for */ if (missing) { - _log->log (String::compose ("SD suggests seek to %1", to_string (*missing)), LogEntry::TYPE_DEBUG_DECODE); + _log->log ( + String::compose ( + "SD suggests seek to %1 from %2", + to_string (*missing), + position() ? to_string(*position()) : "nowhere"), + LogEntry::TYPE_DEBUG_DECODE); maybe_seek (*missing, true); }