[vlc-devel] [PATCH] Bugfix in Qt Popup Menu
Jean-Philippe André
jpeg at via.ecp.fr
Sun Apr 20 02:42:48 CEST 2008
When I used PopupMenu (right click on the video output in Qt4),
I had this error since some time :
ERROR: cannot delete object (340, export) with 1 children
ERROR: Remaining children object (id:375, type:input, name:(null))
o 00000001 libvlc "vlc", refcount 1, 3 children
|-o 00000339 interaction (thread 3071294352), refcount 1, parent 1
|-o 00000415 audio output "alsa", refcount 1, parent 1
`-o 00000413 video output "x11" (thread 2918538128), refcount 1, 1 child, parent 1
`-o 00000414 subpicture, refcount 1, 3 children, parent 413
|-o 00000429 filter, refcount 1, parent 414
|-o 00000430 filter "freetype", refcount 1, parent 414
`-o 00000433 filter "scale", refcount 1, parent 414
zsh: abort ./vlc -vvv
This is because p_input is locked and it's counter is increased
by vlc_object_yield at line 633 (menus.cpp). Just adding a
vlc_object_release( p_input ) solves this issue.
Best regards,
--
Jean-Philippe André - JPeg
---
modules/gui/qt4/menus.cpp | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp
index 577accf..1a5d4e7 100644
--- a/modules/gui/qt4/menus.cpp
+++ b/modules/gui/qt4/menus.cpp
@@ -658,6 +658,8 @@ void QVLCMenu::PopupMenu( intf_thread_t *p_intf, bool show )
VideoAutoMenuBuilder( p_vout, objects, varnames );
vlc_object_release( p_vout );
}
+
+ vlc_object_release( p_input );
}
QMenu *menu = new QMenu();
--
1.5.5
More information about the vlc-devel
mailing list