Comment 20 for bug 35229

Revision history for this message
Gary Coady (garycoady) wrote :

The backtrace I see with this (from an ATI Rage 128 controller) is:
(gdb) bt
#0 gdk_x_error (display=0x842d3a8, error=0xb4ebf200) at gdkmain-x11.c:599
#1 0xb7dcb035 in bonobo_ui_gtk_module_info_get ()
   from /usr/lib/libbonoboui-2.so.0
#2 0xb7214cea in _XError () from /usr/lib/libX11.so.6
#3 0xb721529e in _XReply () from /usr/lib/libX11.so.6
#4 0xb720cee3 in XSync () from /usr/lib/libX11.so.6
#5 0xb52e4aff in xv_display_frame (this_gen=0x8434038, frame_gen=0x8840f30)
    at video_out_xv.c:801
#6 0xb75581df in overlay_and_display_frame (this=0x8435c30, img=0x8840f30,
    vpts=-5409964445402999896) at video_out.c:1002
#7 0xb755951a in video_out_loop (this_gen=0x8435c30) at video_out.c:1137
#8 0xb73a8341 in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
#9 0xb71714ee in clone () from /lib/tls/i686/cmov/libc.so.6

The line that possibly causes the X error is on line 785 of src/video_out/video_out_xv.c in xine-lib:
    XvShmPutImage(this->display, this->xv_port,
                  this->drawable, this->gc, this->cur_frame->image,
                  this->sc.displayed_xoffset, this->sc.displayed_yoffset,
                  this->sc.displayed_width, this->sc.displayed_height,
                  this->sc.output_xoffset, this->sc.output_yoffset,
                  this->sc.output_width, this->sc.output_height, True);

I haven't really done much X programming, but I suspect there should be an X error handler (set with XSetErrorHandler), which then falls back to another (non-accelerated) implementation...

A similar issue to bug 4229.