vlc | branch: master | Erwan Tulou <[email protected]> | Tue Dec 4 15:59:41 2012 +0100| [ab74d69921d20be6854a94da37052c919623a92a] | committer: Erwan Tulou
skins2: adapt to latest change in playlist (activity variable) It fixes skins2 crashing when an input is started. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=ab74d69921d20be6854a94da37052c919623a92a --- modules/gui/skins2/src/vlcproc.cpp | 15 +++++++++++---- modules/gui/skins2/src/vlcproc.hpp | 2 +- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/modules/gui/skins2/src/vlcproc.cpp b/modules/gui/skins2/src/vlcproc.cpp index 96e1b4e..e19c61b 100644 --- a/modules/gui/skins2/src/vlcproc.cpp +++ b/modules/gui/skins2/src/vlcproc.cpp @@ -367,7 +367,7 @@ int VlcProc::onGenericCallback( vlc_object_t *pObj, const char *pVariable, } \ } - ADD_CALLBACK_ENTRY( "activity", on_item_current_changed, false ) + ADD_CALLBACK_ENTRY( "activity", on_activity_changed, false ) ADD_CALLBACK_ENTRY( "volume", on_volume_changed, true ) ADD_CALLBACK_ENTRY( "bit-rate", on_bit_rate_changed, false ) @@ -444,10 +444,17 @@ int VlcProc::onGenericCallback2( vlc_object_t *pObj, const char *pVariable, } -void VlcProc::on_item_current_changed( vlc_object_t* p_obj, vlc_value_t newVal ) +void VlcProc::on_activity_changed( vlc_object_t* p_obj, vlc_value_t newVal ) { - (void)p_obj; - input_item_t *p_item = static_cast<input_item_t*>(newVal.p_address); + (void)p_obj; (void)newVal; + + input_thread_t *p_input = getIntf()->p_sys->p_input; + if( !p_input ) + return; + + input_item_t *p_item = input_GetItem( p_input ); + if( !p_item ) + return; // Update short name char *psz_name = input_item_GetName( p_item ); diff --git a/modules/gui/skins2/src/vlcproc.hpp b/modules/gui/skins2/src/vlcproc.hpp index 8cf36a2..0048842 100644 --- a/modules/gui/skins2/src/vlcproc.hpp +++ b/modules/gui/skins2/src/vlcproc.hpp @@ -98,7 +98,7 @@ public: /// update equalizer void update_equalizer( ); - void on_item_current_changed( vlc_object_t* p_obj, vlc_value_t newVal ); + void on_activity_changed( vlc_object_t* p_obj, vlc_value_t newVal ); void on_intf_event_changed( vlc_object_t* p_obj, vlc_value_t newVal ); void on_bit_rate_changed( vlc_object_t* p_obj, vlc_value_t newVal ); void on_sample_rate_changed( vlc_object_t* p_obj, vlc_value_t newVal ); _______________________________________________ vlc-commits mailing list [email protected] http://mailman.videolan.org/listinfo/vlc-commits
