[Gstreamer-bugs] [Bug 111349] New - gstreamer library foobars gtk+ with XInitThreads

bugzilla-daemon at widget.gnome.org bugzilla-daemon at widget.gnome.org
Tue Apr 22 06:36:45 PDT 2003


Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.

http://bugzilla.gnome.org/show_bug.cgi?id=111349

Changed by hadess at hadess.net.

--- shadow/111349	Tue Apr 22 09:36:45 2003
+++ shadow/111349.tmp.6326	Tue Apr 22 09:36:45 2003
@@ -0,0 +1,122 @@
+Bug#: 111349
+Product: GStreamer
+Version: 0.6.1
+OS: other
+OS Details: 
+Status: NEW   
+Resolution: 
+Severity: blocker
+Priority: Normal
+Component: gstreamer (core)
+AssignedTo: gstreamer-maint at bugzilla.gnome.org                            
+ReportedBy: hadess at hadess.net               
+QAContact: gstreamer-maint at bugzilla.gnome.org
+TargetMilestone: 0.6.x
+URL: 
+Summary: gstreamer library foobars gtk+ with XInitThreads
+
+Simple test case, to save as test.c:
+
+#include <gtk/gtk.h>
+#include <X11/Xlib.h>
+                                                                          
+     
+int main (int argc, char **argv)
+{
+        if (XInitThreads() == 0)
+        {
+                g_message ("XInitThreads() = 0");
+                return 1;
+        }
+                                                                          
+     
+        gtk_init (&argc, &argv);
+                                                                          
+     
+        return 0;
+}
+
+Compile with the following line:
+gcc -O -o test test.c `pkg-config --libs --cflags gtk+-2.0`
+launch ./test, it returns within a second
+
+Compile with the following line:
+gcc -O -o test test.c `pkg-config --libs --cflags gtk+-2.0
+gstreamer-0.6`
+launch ./test, and see it hang... Here's the backtrace from it:
+
+#0  0xffffe002 in ?? ()
+#1  0x40611c7a in _XUnregisterFilter () from /usr/X11R6/lib/libX11.so.6
+#2  0x406a77fc in XGetExtensionVersion () from /usr/X11R6/lib/libXi.so.6
+#3  0x406a9b9f in _XiCheckExtInit () from /usr/X11R6/lib/libXi.so.6
+#4  0x406a82f3 in XListInputDevices () from /usr/X11R6/lib/libXi.so.6
+#5  0x402d5633 in _gdk_input_common_init () from /usr/lib/libgdk-x11-2.0.so.0
+#6  0x402d603a in _gdk_input_init () from /usr/lib/libgdk-x11-2.0.so.0
+#7  0x402afd6b in gdk_display_open () from /usr/lib/libgdk-x11-2.0.so.0
+#8  0x402900e7 in gdk_display_open_default_libgtk_only ()
+   from /usr/lib/libgdk-x11-2.0.so.0
+#9  0x400fbd3a in gtk_init_check () from /usr/lib/libgtk-x11-2.0.so.0
+#10 0x400fbd76 in gtk_init () from /usr/lib/libgtk-x11-2.0.so.0
+#11 0x080487a2 in main ()
+#12 0x420156a4 in __libc_start_main () from /lib/tls/libc.so.6
+
+We get a slightly better trace using the old pthread code:
+#0  0x405bc4f5 in __pthread_sigsuspend () from /lib/libpthread.so.0
+#1  0x405bbca8 in __pthread_wait_for_restart_signal ()
+   from /lib/libpthread.so.0
+#2  0x405bdfd0 in __pthread_alt_lock () from /lib/libpthread.so.0
+#3  0x405ba170 in pthread_mutex_lock () from /lib/libpthread.so.0
+#4  0x40790c7a in _XUnregisterFilter () from /usr/X11R6/lib/libX11.so.6
+#5  0x408267fc in XGetExtensionVersion () from /usr/X11R6/lib/libXi.so.6
+#6  0x40828b9f in _XiCheckExtInit () from /usr/X11R6/lib/libXi.so.6
+#7  0x408272f3 in XListInputDevices () from /usr/X11R6/lib/libXi.so.6
+#8  0x402d5633 in _gdk_input_common_init () from /usr/lib/libgdk-x11-2.0.so.0
+#9  0x402d603a in _gdk_input_init () from /usr/lib/libgdk-x11-2.0.so.0
+#10 0x402afd6b in gdk_display_open () from /usr/lib/libgdk-x11-2.0.so.0
+#11 0x402900e7 in gdk_display_open_default_libgtk_only ()
+   from /usr/lib/libgdk-x11-2.0.so.0
+#12 0x400fbd3a in gtk_init_check () from /usr/lib/libgtk-x11-2.0.so.0
+#13 0x400fbd76 in gtk_init () from /usr/lib/libgtk-x11-2.0.so.0
+#14 0x080487a2 in main ()
+#15 0x4061aa47 in __libc_start_main () from /lib/libc.so.6
+
+The output from ldd test:
+        libgtk-x11-2.0.so.0 => /usr/lib/libgtk-x11-2.0.so.0 (0x40028000)
+        libgdk-x11-2.0.so.0 => /usr/lib/libgdk-x11-2.0.so.0 (0x4027c000)
+        libatk-1.0.so.0 => /usr/lib/libatk-1.0.so.0 (0x402ea000)
+        libgdk_pixbuf-2.0.so.0 => /usr/lib/libgdk_pixbuf-2.0.so.0 (0x40304000)
+        libpangoxft-1.0.so.0 => /usr/lib/libpangoxft-1.0.so.0 (0x40317000)
+        libpangox-1.0.so.0 => /usr/lib/libpangox-1.0.so.0 (0x40338000)
+        libpango-1.0.so.0 => /usr/lib/libpango-1.0.so.0 (0x40345000)
+        libgstreamer-0.6.so.0 => /usr/lib/libgstreamer-0.6.so.0 (0x40378000)
+        libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0x403ea000)
+        libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0x40420000)
+        libdl.so.2 => /lib/libdl.so.2 (0x40424000)
+        libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0x40428000)
+        libxml2.so.2 => /usr/lib/libxml2.so.2 (0x4042d000)
+        libz.so.1 => /usr/lib/libz.so.1 (0x40518000)
+        libm.so.6 => /lib/tls/libm.so.6 (0x40526000)
+        libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0x40549000)
+        libpthread.so.0 => /lib/tls/libpthread.so.0 (0x405b3000)
+        libc.so.6 => /lib/tls/libc.so.6 (0x42000000)
+        libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x405c1000)
+        libXrandr.so.2 => /usr/X11R6/lib/libXrandr.so.2 (0x406a0000)
+        libXi.so.6 => /usr/X11R6/lib/libXi.so.6 (0x406a4000)
+        libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x406ad000)
+        libXft.so.2 => /usr/X11R6/lib/libXft.so.2 (0x406bb000)
+        libXrender.so.1 => /usr/X11R6/lib/libXrender.so.1 (0x406cd000)
+        libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0x406d5000)
+        libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x406fa000)
+        libpopt.so.0 => /usr/lib/libpopt.so.0 (0x4074c000)
+        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
+        libexpat.so.0 => /usr/lib/libexpat.so.0 (0x40754000)
+
+The output from pkg-config --cflags --libs gstreamer-0.6:
+-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -pthread
+-I/usr/include/gstreamer-0.6 -I/usr/include/glib-2.0
+-I/usr/lib/glib-2.0/include -I/usr/include/libxml2  -Wl,--export-dynamic
+-pthread -lgstreamer-0.6 -lgobject-2.0 -lgmodule-2.0 -ldl -lgthread-2.0
+-lxml2 -lz -lm -lglib-2.0
+
+This bug is marked as blocker as it makes the GStreamer version of Totem
+fail to even start.





More information about the Gstreamer-bugs mailing list