Commit 02e878a1 authored by Rémi Duraffort's avatar Rémi Duraffort

Use var_CountChoices instead of var_Change(VLC_VAR_GETCHOICES) when applicable.

parent adf4fbbf
...@@ -1145,15 +1145,11 @@ static int Input( vlc_object_t *p_this, char const *psz_cmd, ...@@ -1145,15 +1145,11 @@ static int Input( vlc_object_t *p_this, char const *psz_cmd,
} }
else else
{ {
vlc_value_t val_list;
/* Get. */ /* Get. */
var_Get( p_input, "chapter", &val ); var_Get( p_input, "chapter", &val );
var_Change( p_input, "chapter", VLC_VAR_GETCHOICES, int i_chapter_count = var_CountChoices( p_input, "chapter" );
&val_list, NULL ); msg_rc( "Currently playing chapter %d/%d.", val.i_int,
msg_rc( "Currently playing chapter %d/%d.", i_chapter_count );
val.i_int, val_list.p_list->i_count );
var_FreeList( &val_list, NULL );
} }
} }
else if( !strcmp( psz_cmd, "chapter_n" ) ) else if( !strcmp( psz_cmd, "chapter_n" ) )
...@@ -1177,15 +1173,11 @@ static int Input( vlc_object_t *p_this, char const *psz_cmd, ...@@ -1177,15 +1173,11 @@ static int Input( vlc_object_t *p_this, char const *psz_cmd,
} }
else else
{ {
vlc_value_t val_list;
/* Get. */ /* Get. */
var_Get( p_input, "title", &val ); var_Get( p_input, "title", &val );
var_Change( p_input, "title", VLC_VAR_GETCHOICES, int i_title_count = var_CountChoices( p_input, "title" );
&val_list, NULL ); msg_rc( "Currently playing title %d/%d.", val.i_int,
msg_rc( "Currently playing title %d/%d.", i_title_count );
val.i_int, val_list.p_list->i_count );
var_FreeList( &val_list, NULL );
} }
} }
else if( !strcmp( psz_cmd, "title_n" ) ) else if( !strcmp( psz_cmd, "title_n" ) )
......
...@@ -662,34 +662,26 @@ void InterfaceWindow::MessageReceived( BMessage * p_message ) ...@@ -662,34 +662,26 @@ void InterfaceWindow::MessageReceived( BMessage * p_message )
case NAVIGATE_NEXT: case NAVIGATE_NEXT:
if( p_input ) if( p_input )
{ {
vlc_value_t val, val_list;
/* First try to go to next chapter */ /* First try to go to next chapter */
if( !var_Get( p_input, "chapter", &val ) ) if( !var_Get( p_input, "chapter", &val ) )
{ {
var_Change( p_input, "chapter", VLC_VAR_GETCHOICES, int i_chapter_count = var_CountChoices( p_input, "chapter" );
&val_list, NULL ); if( i_chapter_count > val.i_int )
if( val_list.p_list->i_count > val.i_int )
{ {
var_FreeList( &val_list, NULL );
var_SetVoid( p_input, "next-chapter" ); var_SetVoid( p_input, "next-chapter" );
break; break;
} }
var_FreeList( &val_list, NULL );
} }
/* Try to go to next title */ /* Try to go to next title */
if( !var_Get( p_input, "title", &val ) ) if( !var_Get( p_input, "title", &val ) )
{ {
var_Change( p_input, "title", VLC_VAR_GETCHOICES, int i_title_count = var_CountChoices( p_input, "title" );
&val_list, NULL ); if( i_title_count > val.i_int )
if( val_list.p_list->i_count > val.i_int )
{ {
var_FreeList( &val_list, NULL );
var_SetVoid( p_input, "next-title" ); var_SetVoid( p_input, "next-title" );
break; break;
} }
var_FreeList( &val_list, NULL );
} }
/* Try to go to next file */ /* Try to go to next file */
......
...@@ -1512,7 +1512,6 @@ static void Redraw( intf_thread_t *p_intf, time_t *t_last_refresh ) ...@@ -1512,7 +1512,6 @@ static void Redraw( intf_thread_t *p_intf, time_t *t_last_refresh )
char buf1[MSTRTIME_MAX_SIZE]; char buf1[MSTRTIME_MAX_SIZE];
char buf2[MSTRTIME_MAX_SIZE]; char buf2[MSTRTIME_MAX_SIZE];
vlc_value_t val; vlc_value_t val;
vlc_value_t val_list;
/* Source */ /* Source */
char *psz_uri = input_item_GetURI( input_GetItem( p_input ) ); char *psz_uri = input_item_GetURI( input_GetItem( p_input ) );
...@@ -1554,23 +1553,17 @@ static void Redraw( intf_thread_t *p_intf, time_t *t_last_refresh ) ...@@ -1554,23 +1553,17 @@ static void Redraw( intf_thread_t *p_intf, time_t *t_last_refresh )
/* Title */ /* Title */
if( !var_Get( p_input, "title", &val ) ) if( !var_Get( p_input, "title", &val ) )
{ {
var_Change( p_input, "title", VLC_VAR_GETCHOICES, &val_list, NULL ); int i_title_count = var_CountChoices( p_input, "title" );
if( val_list.p_list->i_count > 0 ) if( i_title_count > 0 )
{ mvnprintw( y++, 0, COLS, _(" Title : %d/%d"), val.i_int, i_title_count );
mvnprintw( y++, 0, COLS, _(" Title : %d/%d"), val.i_int, val_list.p_list->i_count );
}
var_FreeList( &val_list, NULL );
} }
/* Chapter */ /* Chapter */
if( !var_Get( p_input, "chapter", &val ) ) if( !var_Get( p_input, "chapter", &val ) )
{ {
var_Change( p_input, "chapter", VLC_VAR_GETCHOICES, &val_list, NULL ); int i_chapter_count = var_CountChoices( p_input, "chapter" );
if( val_list.p_list->i_count > 0 ) if( i_chapter_count > 0 )
{ mvnprintw( y++, 0, COLS, _(" Chapter : %d/%d"), val.i_int, i_chapter_count );
mvnprintw( y++, 0, COLS, _(" Chapter : %d/%d"), val.i_int, val_list.p_list->i_count );
}
var_FreeList( &val_list, NULL );
} }
} }
else else
......
...@@ -372,15 +372,12 @@ int libvlc_audio_get_track_count( libvlc_media_player_t *p_mi, ...@@ -372,15 +372,12 @@ int libvlc_audio_get_track_count( libvlc_media_player_t *p_mi,
libvlc_exception_t *p_e ) libvlc_exception_t *p_e )
{ {
input_thread_t *p_input_thread = libvlc_get_input_thread( p_mi, p_e ); input_thread_t *p_input_thread = libvlc_get_input_thread( p_mi, p_e );
vlc_value_t val_list;
int i_track_count; int i_track_count;
if( !p_input_thread ) if( !p_input_thread )
return -1; return -1;
var_Change( p_input_thread, "audio-es", VLC_VAR_GETCHOICES, &val_list, NULL ); i_track_count = var_CountChoices( p_input_thread, "audio-es" );
i_track_count = val_list.p_list->i_count;
var_FreeList( &val_list, NULL );
vlc_object_release( p_input_thread ); vlc_object_release( p_input_thread );
return i_track_count; return i_track_count;
......
...@@ -281,15 +281,12 @@ int libvlc_video_get_spu_count( libvlc_media_player_t *p_mi, ...@@ -281,15 +281,12 @@ int libvlc_video_get_spu_count( libvlc_media_player_t *p_mi,
libvlc_exception_t *p_e ) libvlc_exception_t *p_e )
{ {
input_thread_t *p_input_thread = libvlc_get_input_thread( p_mi, p_e ); input_thread_t *p_input_thread = libvlc_get_input_thread( p_mi, p_e );
vlc_value_t val_list;
int i_spu_count; int i_spu_count;
if( !p_input_thread ) if( !p_input_thread )
return -1; return -1;
var_Change( p_input_thread, "spu-es", VLC_VAR_GETCHOICES, &val_list, NULL ); i_spu_count = var_CountChoices( p_input_thread, "spu-es" );
i_spu_count = val_list.p_list->i_count;
var_FreeList( &val_list, NULL );
vlc_object_release( p_input_thread ); vlc_object_release( p_input_thread );
return i_spu_count; return i_spu_count;
...@@ -506,15 +503,12 @@ int libvlc_video_get_track_count( libvlc_media_player_t *p_mi, ...@@ -506,15 +503,12 @@ int libvlc_video_get_track_count( libvlc_media_player_t *p_mi,
libvlc_exception_t *p_e ) libvlc_exception_t *p_e )
{ {
input_thread_t *p_input_thread = libvlc_get_input_thread( p_mi, p_e ); input_thread_t *p_input_thread = libvlc_get_input_thread( p_mi, p_e );
vlc_value_t val_list;
int i_track_count; int i_track_count;
if( !p_input_thread ) if( !p_input_thread )
return -1; return -1;
var_Change( p_input_thread, "video-es", VLC_VAR_GETCHOICES, &val_list, NULL ); i_track_count = var_CountChoices( p_input_thread, "video-es" );
i_track_count = val_list.p_list->i_count;
var_FreeList( &val_list, NULL );
vlc_object_release( p_input_thread ); vlc_object_release( p_input_thread );
return i_track_count; return i_track_count;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment