[vlc-devel] commit: cc codec: don' t use a static variable in the middle of the code for no reason what so ever . (Derk-Jan Hartman )

git version control git at videolan.org
Sun Aug 3 13:04:18 CEST 2008


vlc | branch: master | Derk-Jan Hartman <hartman at videolan.org> | Sun Aug  3 13:06:20 2008 +0200| [07d957f18be7102d848bda928720d928ab27e3dd] | committer: Derk-Jan Hartman 

cc codec: don't use a static variable in the middle of the code for no reason what so ever.

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=07d957f18be7102d848bda928720d928ab27e3dd
---

 modules/codec/cc.c |    8 +++++---
 1 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/modules/codec/cc.c b/modules/codec/cc.c
index 5b09488..b4743eb 100644
--- a/modules/codec/cc.c
+++ b/modules/codec/cc.c
@@ -155,6 +155,7 @@ struct decoder_sys_t
 
     int     i_block;
     block_t *pp_block[CC_MAX_REORDER_SIZE];
+    int64_t i_last_pts;
 
     int i_field;
     int i_channel;
@@ -206,6 +207,7 @@ static int Open( vlc_object_t *p_this )
     /* init of p_sys */
     memset( p_sys, 0, sizeof( *p_sys ) );
     p_sys->i_block = 0;
+    p_sys->i_last_pts = 0;
 
     p_sys->i_field = i_field;
     p_sys->i_channel = i_channel;
@@ -391,12 +393,12 @@ static subpicture_t *Convert( decoder_t *p_dec, block_t *p_block )
     if( p_block )
         block_Release( p_block );
 
-    static int64_t i_last = 0;
-    if( b_changed )//&& i_pts - i_last > 100*1000 )
+    p_sys->i_last_pts = 0;
+    if( b_changed )//&& i_pts - p_sys->i_last_pts > 100*1000 )
     {
         char *psz_subtitle = Eia608Text( &p_sys->eia608, false );
         char *psz_html     = NULL;//Eia608Text( &p_sys->eia608, true );
-        i_last = i_pts;
+        p_sys->i_last_pts = i_pts;
         return Subtitle( p_dec, psz_subtitle, psz_html, i_pts );
     }
     return NULL;




More information about the vlc-devel mailing list