]> git.sesse.net Git - vlc/commitdiff
* configure.ac.in: don't include the screensaver plugin on win32.
authorGildas Bazin <gbazin@videolan.org>
Sun, 9 Mar 2003 19:25:09 +0000 (19:25 +0000)
committerGildas Bazin <gbazin@videolan.org>
Sun, 9 Mar 2003 19:25:09 +0000 (19:25 +0000)
* src/misc/variables.c: fixed a bug in var_Change() and in var_DelCallback().
* modules/codec/spudec/parse.c: removed unnessecary code.
* modules/access/dvdplay/access.c: fixed some navigation problems.

configure.ac.in
modules/access/dvdplay/access.c
modules/codec/spudec/parse.c
src/misc/variables.c

index 632bc08df34284b5a12e5d3a3389dc147ac14a33..2fbf145e4b3575e4f86ce26867d7e29b59e514f1 100644 (file)
@@ -813,8 +813,14 @@ PLUGINS="${PLUGINS} i420_rgb i420_yuy2 i422_yuy2 i420_ymga"
 PLUGINS="${PLUGINS} id3 m3u"
 PLUGINS="${PLUGINS} wav araw demuxdump demuxsub adpcm a52sys"
 PLUGINS="${PLUGINS} access_udp access_http ipv4 access_mms access_ftp"
-PLUGINS="${PLUGINS} sap screensaver"
-PLUGINS="${PLUGINS} httpd"
+PLUGINS="${PLUGINS} sap httpd"
+
+dnl
+dnl Some plugins aren't useful on some platforms
+dnl
+if test "x${SYS}" != "xmingw32"
+    PLUGINS="${PLUGINS} screensaver"
+fi
 
 dnl
 dnl  Accelerated modules
index 62cd74de993cb19411d9b4827ccf029b73b69270..a770eb7a16808bb5edf504b0b04cdcdee4042cdb 100644 (file)
@@ -2,7 +2,7 @@
  * access.c: access capabilities for dvdplay plugin.
  *****************************************************************************
  * Copyright (C) 2001 VideoLAN
- * $Id: access.c,v 1.11 2003/01/29 11:17:44 gbazin Exp $
+ * $Id: access.c,v 1.12 2003/03/09 19:25:09 gbazin Exp $
  *
  * Author: Stéphane Borel <stef@via.ecp.fr>
  *
@@ -290,9 +290,13 @@ static int dvdplay_SetArea( input_thread_t * p_input, input_area_t * p_area )
 
         dvdNewArea( p_input, p_area );
 
+        /* Reinit ES */
+        dvdNewPGC( p_input );
+
         dvdplay_start( p_dvd->vmg, p_area->i_id );
 
         p_area->i_part = i_chapter;
+
     } /* i_title >= 0 */
     else
     {
@@ -417,6 +421,13 @@ static void pf_vmg_callback( void* p_args, dvdplay_event_t event )
         /* update current chapter */
         p_input->stream.p_selected_area->i_part =
             dvdplay_chapter_cur( p_dvd->vmg );
+
+        p_input->stream.p_selected_area->i_tell =
+            LB2OFF( dvdplay_position( p_dvd->vmg ) ) -
+            p_input->stream.p_selected_area->i_start;
+
+        /* warn interface that something has changed */
+        p_input->stream.b_changed = 1;
         break;
     case NEW_CELL:
         p_dvd->b_end_of_cell = 0;
@@ -512,8 +523,6 @@ static int dvdNewArea( input_thread_t * p_input, input_area_t * p_area )
     dvdplay_SetProgram( p_input,
                         p_input->stream.pp_programs[i_angle-1] );
 
-//    dvdNewPGC( p_input );
-
     /* No PSM to read in DVD mode, we already have all information */
     p_input->stream.p_selected_program->b_is_ok = 1;
 
index 669e64dba3d82917fb6c69edf4dd0e75c49e2384..2b0a883d1c1a164ac1f0a2458b60cd1f42e6a4a5 100644 (file)
@@ -2,7 +2,7 @@
  * parse.c: SPU parser
  *****************************************************************************
  * Copyright (C) 2000-2001 VideoLAN
- * $Id: parse.c,v 1.10 2003/01/30 19:14:17 gbazin Exp $
+ * $Id: parse.c,v 1.11 2003/03/09 19:25:08 gbazin Exp $
  *
  * Authors: Samuel Hocevar <sam@zoy.org>
  *
@@ -166,8 +166,6 @@ void E_(ParsePacket)( spudec_thread_t *p_spudec )
 
             vlc_mutex_lock( p_mutex );
             UpdateSPU( p_spu, VLC_OBJECT(p_spu->p_sys->p_input) );
-            var_DelCallback( p_spu->p_sys->p_input,
-                             "highlight", CropCallback, p_spu );
             var_AddCallback( p_spu->p_sys->p_input,
                              "highlight", CropCallback, p_spu );
             vlc_mutex_unlock( p_mutex );
index cb53053e3af0d24719b7778e8c5ab758090d610d..dbc59e7e244751aabe0b09dd4355eb796c4acdbd 100644 (file)
@@ -2,7 +2,7 @@
  * variables.c: routines for object variables handling
  *****************************************************************************
  * Copyright (C) 2002 VideoLAN
- * $Id: variables.c,v 1.19 2002/12/18 14:17:11 sam Exp $
+ * $Id: variables.c,v 1.20 2003/03/09 19:25:08 gbazin Exp $
  *
  * Authors: Samuel Hocevar <sam@zoy.org>
  *
@@ -386,8 +386,9 @@ int __var_Change( vlc_object_t *p_this, const char *psz_name,
 
         case VLC_VAR_GETLIST:
             p_val->p_list = malloc( sizeof(vlc_list_t) );
-            p_val->p_list->p_values = malloc( p_var->choices.i_count
-                                              * sizeof(vlc_value_t) );
+            if( p_var->choices.i_count )
+                p_val->p_list->p_values = malloc( p_var->choices.i_count
+                                                  * sizeof(vlc_value_t) );
             p_val->p_list->i_count = p_var->choices.i_count;
             for( i = 0 ; i < p_var->choices.i_count ; i++ )
             {
@@ -400,8 +401,9 @@ int __var_Change( vlc_object_t *p_this, const char *psz_name,
             {
                 p_var->pf_free( &p_val->p_list->p_values[i] );
             }
-            free( p_val->p_list->p_values );
-           free( p_val->p_list );
+            if( p_val->p_list->i_count )
+                free( p_val->p_list->p_values );
+            free( p_val->p_list );
             break;
 
         default:
@@ -611,7 +613,7 @@ int __var_DelCallback( vlc_object_t *p_this, const char *psz_name,
     for( i_entry = p_var->i_entries ; i_entry-- ; )
     {
         if( p_var->p_entries[i_entry].pf_callback == pf_callback
-            || p_var->p_entries[i_entry].p_data == p_data )
+            && p_var->p_entries[i_entry].p_data == p_data )
         {
             break;
         }