vlc | branch: master | Rémi Denis-Courmont <[email protected]> | Sat Aug 16 13:04:33 2014 +0300| [9e7dd0b49fe1d7858c344939072bbe9555f800c2] | committer: Rémi Denis-Courmont
playlist: move i_nb_played to playlist item, not the input item This is accessed with the playlock lock anyway. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=9e7dd0b49fe1d7858c344939072bbe9555f800c2 --- include/vlc_input_item.h | 1 - include/vlc_playlist.h | 1 + modules/lua/libs/playlist.c | 2 +- src/input/item.c | 1 - src/playlist/item.c | 1 + src/playlist/thread.c | 2 +- src/playlist/tree.c | 4 ++-- 7 files changed, 6 insertions(+), 6 deletions(-) diff --git a/include/vlc_input_item.h b/include/vlc_input_item.h index a701044..1bfb2f9 100644 --- a/include/vlc_input_item.h +++ b/include/vlc_input_item.h @@ -74,7 +74,6 @@ struct input_item_t es_format_t **es; /**< Es formats */ input_stats_t *p_stats; /**< Statistics */ - int i_nb_played; /**< Number of times played */ vlc_meta_t *p_meta; diff --git a/include/vlc_playlist.h b/include/vlc_playlist.h index 2c64a7c..384221b 100644 --- a/include/vlc_playlist.h +++ b/include/vlc_playlist.h @@ -138,6 +138,7 @@ struct playlist_item_t playlist_item_t **pp_children; /**< Children nodes/items */ playlist_item_t *p_parent; /**< Item parent */ int i_children; /**< Number of children, -1 if not a node */ + unsigned i_nb_played; /**< Times played */ int i_id; /**< Playlist item specific id */ uint8_t i_flags; /**< Flags \see playlist_item_flags_e */ diff --git a/modules/lua/libs/playlist.c b/modules/lua/libs/playlist.c index ab4faf1..8bcc8a7 100644 --- a/modules/lua/libs/playlist.c +++ b/modules/lua/libs/playlist.c @@ -233,7 +233,7 @@ static void push_playlist_item( lua_State *L, playlist_item_t *p_item ) else lua_pushnumber( L, ((double)p_input->i_duration)*1e-6 ); lua_setfield( L, -2, "duration" ); - lua_pushinteger( L, p_input->i_nb_played ); + lua_pushinteger( L, p_item->i_nb_played ); lua_setfield( L, -2, "nb_played" ); luaopen_input_item( L, p_input ); /* TODO: add (optional) info categories, meta, options, es */ diff --git a/src/input/item.c b/src/input/item.c index 4f0b053..40b854e 100644 --- a/src/input/item.c +++ b/src/input/item.c @@ -851,7 +851,6 @@ input_item_NewWithType( const char *psz_uri, const char *psz_name, TAB_INIT( p_input->i_categories, p_input->pp_categories ); TAB_INIT( p_input->i_es, p_input->es ); p_input->p_stats = NULL; - p_input->i_nb_played = 0; p_input->p_meta = NULL; TAB_INIT( p_input->i_epg, p_input->pp_epg ); diff --git a/src/playlist/item.c b/src/playlist/item.c index 9281481..eafc79e 100644 --- a/src/playlist/item.c +++ b/src/playlist/item.c @@ -237,6 +237,7 @@ playlist_item_t *playlist_ItemNewFromInput( playlist_t *p_playlist, p_item->p_parent = NULL; p_item->i_children = -1; p_item->pp_children = NULL; + p_item->i_nb_played = 0; p_item->i_flags = 0; p_item->p_playlist = p_playlist; diff --git a/src/playlist/thread.c b/src/playlist/thread.c index 8130056..0e51f60 100644 --- a/src/playlist/thread.c +++ b/src/playlist/thread.c @@ -201,7 +201,7 @@ static void PlayItem( playlist_t *p_playlist, playlist_item_t *p_item ) msg_Dbg( p_playlist, "creating new input thread" ); - p_input->i_nb_played++; + p_item->i_nb_played++; set_current_status_item( p_playlist, p_item ); p_sys->status.i_status = PLAYLIST_RUNNING; diff --git a/src/playlist/tree.c b/src/playlist/tree.c index eca12b1..9fe3c24 100644 --- a/src/playlist/tree.c +++ b/src/playlist/tree.c @@ -323,7 +323,7 @@ playlist_item_t *playlist_GetNextLeaf( playlist_t *p_playlist, { if( b_ena && p_next->i_flags & PLAYLIST_DBL_FLAG ) b_ena_ok = false; - if( b_unplayed && p_next->p_input->i_nb_played != 0 ) + if( b_unplayed && p_next->i_nb_played != 0 ) b_unplayed_ok = false; if( b_ena_ok && b_unplayed_ok ) break; } @@ -364,7 +364,7 @@ playlist_item_t *playlist_GetPrevLeaf( playlist_t *p_playlist, { if( b_ena && p_prev->i_flags & PLAYLIST_DBL_FLAG ) b_ena_ok = false; - if( b_unplayed && p_prev->p_input->i_nb_played != 0 ) + if( b_unplayed && p_prev->i_nb_played != 0 ) b_unplayed_ok = false; if( b_ena_ok && b_unplayed_ok ) break; } _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
