diff --git a/modules/gui/qt/components/playlist/selector.cpp b/modules/gui/qt/components/playlist/selector.cpp index a5be6a06d6004052119ba8ccbd53315886adf605..4a0c0e44570b2c6be70ae0ba791e59dcd3799bf5 100644 --- a/modules/gui/qt/components/playlist/selector.cpp +++ b/modules/gui/qt/components/playlist/selector.cpp @@ -366,11 +366,15 @@ void PLSelector::setSource( QTreeWidgetItem *item ) return ; services_discovery_descriptor_t *p_test = new services_discovery_descriptor_t; - int i_ret = playlist_ServicesDiscoveryControl( THEPL, qtu( qs ), SD_CMD_DESCRIPTOR, p_test ); - if ( i_ret != VLC_SUCCESS ) + if( p_test ) + { + if ( playlist_ServicesDiscoveryControl( THEPL, qtu( qs ), + SD_CMD_DESCRIPTOR, p_test ) == VLC_SUCCESS ) + { + item->setData( 0, CAP_SEARCH_ROLE, (p_test->i_capabilities & SD_CAP_SEARCH) ); + } delete p_test; - else if ( p_test->i_capabilities & SD_CAP_SEARCH ) - item->setData( 0, CAP_SEARCH_ROLE, true ); + } } }