Commit 1245b2b3 authored by Rémi Denis-Courmont's avatar Rémi Denis-Courmont
Browse files

vlc_list_children: fix memory leaks

parent 3bccf493
...@@ -1493,14 +1493,13 @@ static void DumpObject( intf_thread_t *p_intf, int *l, vlc_object_t *p_obj, int ...@@ -1493,14 +1493,13 @@ static void DumpObject( intf_thread_t *p_intf, int *l, vlc_object_t *p_obj, int
p_obj->psz_object_type, p_obj->i_object_id ); p_obj->psz_object_type, p_obj->i_object_id );
vlc_list_t *list = vlc_list_children( p_obj ); vlc_list_t *list = vlc_list_children( p_obj );
vlc_object_release( p_obj );
for( int i = 0; i < list->i_count ; i++ ) for( int i = 0; i < list->i_count ; i++ )
{ {
MainBoxWrite( p_intf, *l, 1 + 2 * i_level, MainBoxWrite( p_intf, *l, 1 + 2 * i_level,
i == list->i_count - 1 ? "`-" : "|-" ); i == list->i_count - 1 ? "`-" : "|-" );
DumpObject( p_intf, l, list->p_values[i].p_object, i_level + 1 ); DumpObject( p_intf, l, list->p_values[i].p_object, i_level + 1 );
} }
vlc_list_release( list );
} }
static void Redraw( intf_thread_t *p_intf, time_t *t_last_refresh ) static void Redraw( intf_thread_t *p_intf, time_t *t_last_refresh )
...@@ -1984,7 +1983,6 @@ static void Redraw( intf_thread_t *p_intf, time_t *t_last_refresh ) ...@@ -1984,7 +1983,6 @@ static void Redraw( intf_thread_t *p_intf, time_t *t_last_refresh )
{ {
int l = 0; int l = 0;
DrawBox( p_sys->w, y++, 0, h, COLS, _(" Objects "), p_sys->b_color ); DrawBox( p_sys->w, y++, 0, h, COLS, _(" Objects "), p_sys->b_color );
vlc_object_yield( p_intf->p_libvlc );
DumpObject( p_intf, &l, VLC_OBJECT( p_intf->p_libvlc ), 0 ); DumpObject( p_intf, &l, VLC_OBJECT( p_intf->p_libvlc ), 0 );
p_sys->i_box_lines_total = l; p_sys->i_box_lines_total = l;
......
...@@ -217,10 +217,9 @@ void MessagesDialog::buildTree( QTreeWidgetItem *parentItem, ...@@ -217,10 +217,9 @@ void MessagesDialog::buildTree( QTreeWidgetItem *parentItem,
item->setExpanded( true ); item->setExpanded( true );
vlc_list_t *l = vlc_list_children( p_obj ); vlc_list_t *l = vlc_list_children( p_obj );
vlc_object_release( p_obj );
for( int i=0; i < l->i_count; i++ ) for( int i=0; i < l->i_count; i++ )
buildTree( item, l->p_values[i].p_object ); buildTree( item, l->p_values[i].p_object );
vlc_list_release( l );
} }
void MessagesDialog::clearOrUpdate() void MessagesDialog::clearOrUpdate()
...@@ -234,8 +233,6 @@ void MessagesDialog::clearOrUpdate() ...@@ -234,8 +233,6 @@ void MessagesDialog::clearOrUpdate()
void MessagesDialog::updateTree() void MessagesDialog::updateTree()
{ {
modulesTree->clear(); modulesTree->clear();
vlc_object_yield( p_intf->p_libvlc );
buildTree( NULL, VLC_OBJECT( p_intf->p_libvlc ) ); buildTree( NULL, VLC_OBJECT( p_intf->p_libvlc ) );
} }
......
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