]> git.sesse.net Git - vlc/commitdiff
oggseek: Reset stream after searching for the last frame
authorHugo Beauzée-Luyssen <hugo@beauzee.fr>
Wed, 8 Aug 2012 19:32:54 +0000 (22:32 +0300)
committerHugo Beauzée-Luyssen <hugo@beauzee.fr>
Wed, 8 Aug 2012 19:49:25 +0000 (22:49 +0300)
modules/demux/oggseek.c

index 7231cc3a0a3fdc14e211201e32c1b6c4e4177f15..567d920df32cba2cf16447ae9804f3ae96cefc05 100644 (file)
@@ -705,6 +705,10 @@ static int64_t find_last_theora_frame ( demux_t *p_demux, logical_stream_t *p_st
      * adverse effects. */
 
     seek_byte( p_demux, 0 );
+    /* Reset stream states */
+    p_stream->i_serial_no = ogg_page_serialno( &p_demux->p_sys->current_page );
+    ogg_stream_init( &p_stream->os, p_stream->i_serial_no );
+    ogg_stream_pagein( &p_stream->os, &p_demux->p_sys->current_page );
 
     return i_frame;
 }