[Mplayer-advusers] X11 error: BadDrawable

Greg Stark gsstark at mit.edu
Fri Oct 3 21:27:02 CEST 2003


There seems to be a race condition bug that kicks in whenever mplayer starts
playing a video. About one time in four crashes immediately with an X11
BadDrawable error. Usually immediately rerunning the same command line works
fine the second time.

I think it's the same error that nearly always kicks in when one movie ends
and it tries to start a second one. This is why it nearly always fails when
you list more than one movie on the command-line.

The backtrace is fairly uninformative except to show that somehow XSync is
triggering the error. In reality it's probably being caused by some previous
X11 call with bad data.

Why on earth is flip_page calling XSync anyways? XSync doesn't have anything
to do with flipping video pages.

The error was:
X11 error: BadDrawable (invalid Pixmap or Window parameter)

The backtrace:
(gdb) bt
#0  0x40642641 in kill () from /lib/libc.so.6
#1  0x405cd4d1 in pthread_kill () from /lib/libpthread.so.0
#2  0x405cd7db in raise () from /lib/libpthread.so.0
#3  0x406423f4 in raise () from /lib/libc.so.6
#4  0x4064395b in abort () from /lib/libc.so.6
#5  0x080c4180 in x11_errorhandler (display=0x85d12f8, event=0xbfffd8c0)
    at x11_common.c:156
#6  0x40456f61 in _XError () from /usr/X11R6/lib/libX11.so.6
#7  0x404555f2 in _XReply () from /usr/X11R6/lib/libX11.so.6
#8  0x404509ae in XSync () from /usr/X11R6/lib/libX11.so.6
#9  0x080c915d in flip_page () at vo_x11.c:466
#10 0x08094b85 in main (argc=8, argv=0xbfffedf4) at mplayer.c:2248


I'm on Debian unstable with 
XFree86 Version 4.2.1.1 (Debian 4.2.1-9 20030630175526 james at nocrew.org)

Kernel 2.4.23-pre4 #1 SMP

-rwxr-xr-x    1 root     root      1230832 Sep 21 08:56 /lib/libc-2.3.2.so
lrwxrwxrwx    1 root     root           14 Sep 21 15:25 /lib/libc.so.5 -> libc.so.5.4.46
-rw-r--r--    1 root     root       561816 May 30 11:03 /lib/libc.so.5.4.46
lrwxrwxrwx    1 root     root           13 Oct  3 14:28 /lib/libc.so.6 -> libc-2.3.2.so

Reading specs from /usr/lib/gcc-lib/i486-linux/3.3.2/specs
Configured with: ../src/configure -v --enable-languages=c,c++,java,f77,pascal,objc,ada,treelang --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-gxx-include-dir=/usr/include/c++/3.3 --enable-shared --with-system-zlib --enable-nls --without-included-gettext --enable-__cxa_atexit --enable-clocale=gnu --enable-debug --enable-java-gc=boehm --enable-java-awt=xlib --enable-objc-gc i486-linux
Thread model: posix
gcc version 3.3.2 20030908 (Debian prerelease)

GNU ld version 2.14.90.0.4 20030523 Debian GNU/Linux

Window manager is TWM.

processor	: 0
vendor_id	: GenuineIntel
cpu family	: 15
model		: 2
model name	: Intel(R) Pentium(R) 4 CPU 2.80GHz
stepping	: 9
cpu MHz		: 2798.702
cache size	: 512 KB
fdiv_bug	: no
hlt_bug		: no
f00f_bug	: no
coma_bug	: no
fpu		: yes
fpu_exception	: yes
cpuid level	: 2
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe cid
bogomips	: 5583.66

processor	: 1
vendor_id	: GenuineIntel
cpu family	: 15
model		: 2
model name	: Intel(R) Pentium(R) 4 CPU 2.80GHz
stepping	: 9
cpu MHz		: 2798.702
cache size	: 512 KB
fdiv_bug	: no
hlt_bug		: no
f00f_bug	: no
coma_bug	: no
fpu		: yes
fpu_exception	: yes
cpuid level	: 2
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe cid
bogomips	: 5596.77

The same behaviour happens on both the Matrox G400 and the ATI:

01:00.0 VGA compatible controller: Matrox Graphics, Inc. MGA G400 AGP (rev 04)
02:0a.0 VGA compatible controller: Texas Instruments TVP4010 [Permedia] (rev 01)
02:0c.0 VGA compatible controller: ATI Technologies Inc 3D Rage I/II 215GT [Mach64 GT] (rev 41)



-- 
greg



More information about the MPlayer-advusers mailing list