Bug#515946: libxi6 2:1.2.0-2 makes iceweasel and midori crash

Vincent Lefevre vincent at vinc17.org
Thu Aug 13 14:34:35 UTC 2009


On 2009-08-12 15:14:36 +0200, Julien Cristau wrote:
> On Wed, May 27, 2009 at 17:58:08 +0200, Vincent Lefevre wrote:
> > And the backtrace of previous execution (without valgrind):
> > vin:~> gdb =midori core
> > GNU gdb 6.8-debian
> > [...]
> > Core was generated by `midori'.
> > Program terminated with signal 11, Segmentation fault.
> > [New process 10943]
> > #0  _gdk_x11_screen_process_owner_change (screen=0x0, event=0x7fffe53b6900)
> >     at /scratch/build-area/gtk+2.0-2.16.1/gdk/x11/gdkscreen-x11.c:1124
> > 1124    /scratch/build-area/gtk+2.0-2.16.1/gdk/x11/gdkscreen-x11.c: No such file or directory.
> >         in /scratch/build-area/gtk+2.0-2.16.1/gdk/x11/gdkscreen-x11.c

Now:

vin:~> gdb midori
GNU gdb (GDB) 6.8.50.20090628-cvs-debian
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
(no debugging symbols found)
(gdb) run
Starting program: /usr/bin/midori 
[Thread debugging using libthread_db enabled]
[New Thread 0x7fffe62b1950 (LWP 28279)]
[Thread 0x7fffe62b1950 (LWP 28279) exited]

Program received signal SIGSEGV, Segmentation fault.
_gdk_x11_screen_process_owner_change (screen=0x0, event=0x7fffffffd430)
    at /tmp/buildd/gtk+2.0-2.16.5/gdk/x11/gdkscreen-x11.c:1127
1127    /tmp/buildd/gtk+2.0-2.16.5/gdk/x11/gdkscreen-x11.c: No such file or directory.
        in /tmp/buildd/gtk+2.0-2.16.5/gdk/x11/gdkscreen-x11.c

> this is:
>   Atom xcm_selection_atom = gdk_x11_atom_to_xatom_for_display (screen_x11->display,
>                                                                screen_x11->cm_selection_atom);
> 
> and screen_x11 is NULL.  It might be worth printing *event, too.

(gdb) print *event
$1 = {type = 116, xany = {type = 116, serial = 219, send_event = 0, 
    display = 0x696800, window = 0}, xkey = {type = 116, serial = 219, 
    send_event = 0, display = 0x696800, window = 0, root = 50331649, 
    subwindow = 0, time = 50331694, x = 0, y = 0, x_root = 8201632, 
    y_root = 0, state = 50331689, keycode = 1, same_screen = 0}, xbutton = {
    type = 116, serial = 219, send_event = 0, display = 0x696800, window = 0, 
    root = 50331649, subwindow = 0, time = 50331694, x = 0, y = 0, 
    x_root = 8201632, y_root = 0, state = 50331689, button = 1, 
    same_screen = 0}, xmotion = {type = 116, serial = 219, send_event = 0, 
    display = 0x696800, window = 0, root = 50331649, subwindow = 0, 
    time = 50331694, x = 0, y = 0, x_root = 8201632, y_root = 0, 
    state = 50331689, is_hint = 1 '\1', same_screen = 0}, xcrossing = {
    type = 116, serial = 219, send_event = 0, display = 0x696800, window = 0, 
    root = 50331649, subwindow = 0, time = 50331694, x = 0, y = 0, 
    x_root = 8201632, y_root = 0, mode = 50331689, detail = 1, 
    same_screen = 0, focus = 0, state = 36861488}, xfocus = {type = 116, 
    serial = 219, send_event = 0, display = 0x696800, window = 0, 
    mode = 50331649, detail = 0}, xexpose = {type = 116, serial = 219, 
    send_event = 0, display = 0x696800, window = 0, x = 50331649, y = 0, 
    width = 0, height = 0, count = 50331694}, xgraphicsexpose = {type = 116, 
    serial = 219, send_event = 0, display = 0x696800, drawable = 0, 
    x = 50331649, y = 0, width = 0, height = 0, count = 50331694, 
    major_code = 0, minor_code = 0}, xnoexpose = {type = 116, serial = 219, 
    send_event = 0, display = 0x696800, drawable = 0, major_code = 50331649, 
    minor_code = 0}, xvisibility = {type = 116, serial = 219, send_event = 0, 
    display = 0x696800, window = 0, state = 50331649}, xcreatewindow = {
    type = 116, serial = 219, send_event = 0, display = 0x696800, parent = 0, 
    window = 50331649, x = 0, y = 0, width = 50331694, height = 0, 
    border_width = 0, override_redirect = 0}, xdestroywindow = {type = 116, 
    serial = 219, send_event = 0, display = 0x696800, event = 0, 
    window = 50331649}, xunmap = {type = 116, serial = 219, send_event = 0, 
    display = 0x696800, event = 0, window = 50331649, from_configure = 0}, 
  xmap = {type = 116, serial = 219, send_event = 0, display = 0x696800, 
    event = 0, window = 50331649, override_redirect = 0}, xmaprequest = {
    type = 116, serial = 219, send_event = 0, display = 0x696800, parent = 0, 
    window = 50331649}, xreparent = {type = 116, serial = 219, send_event = 0, 
    display = 0x696800, event = 0, window = 50331649, parent = 0, 
    x = 50331694, y = 0, override_redirect = 0}, xconfigure = {type = 116, 
    serial = 219, send_event = 0, display = 0x696800, event = 0, 
    window = 50331649, x = 0, y = 0, width = 50331694, height = 0, 
    border_width = 0, above = 8201632, override_redirect = 50331689}, 
  xgravity = {type = 116, serial = 219, send_event = 0, display = 0x696800, 
    event = 0, window = 50331649, x = 0, y = 0}, xresizerequest = {type = 116, 
    serial = 219, send_event = 0, display = 0x696800, window = 0, 
    width = 50331649, height = 0}, xconfigurerequest = {type = 116, 
    serial = 219, send_event = 0, display = 0x696800, parent = 0, 
    window = 50331649, x = 0, y = 0, width = 50331694, height = 0, 
    border_width = 0, above = 8201632, detail = 50331689, value_mask = 0}, 
  xcirculate = {type = 116, serial = 219, send_event = 0, display = 0x696800, 
    event = 0, window = 50331649, place = 0}, xcirculaterequest = {type = 116, 
    serial = 219, send_event = 0, display = 0x696800, parent = 0, 
    window = 50331649, place = 0}, xproperty = {type = 116, serial = 219, 
    send_event = 0, display = 0x696800, window = 0, atom = 50331649, time = 0, 
    state = 50331694}, xselectionclear = {type = 116, serial = 219, 
    send_event = 0, display = 0x696800, window = 0, selection = 50331649, 
    time = 0}, xselectionrequest = {type = 116, serial = 219, send_event = 0, 
    display = 0x696800, owner = 0, requestor = 50331649, selection = 0, 
    target = 50331694, property = 0, time = 8201632}, xselection = {
    type = 116, serial = 219, send_event = 0, display = 0x696800, 
    requestor = 0, selection = 50331649, target = 0, property = 50331694, 
    time = 0}, xcolormap = {type = 116, serial = 219, send_event = 0, 
    display = 0x696800, window = 0, colormap = 50331649, new = 0, state = 0}, 
  xclient = {type = 116, serial = 219, send_event = 0, display = 0x696800, 
    window = 0, message_type = 50331649, format = 0, data = {
      b = ".\0\0\3", '\0' <repeats 12 times>, " %}", s = {46, 768, 0, 0, 0, 0, 
        0, 0, 9632, 125}, l = {50331694, 0, 8201632, 4345298985, 0}}}, 
  xmapping = {type = 116, serial = 219, send_event = 0, display = 0x696800, 
    window = 0, request = 50331649, first_keycode = 0, count = 0}, xerror = {
    type = 116, display = 0xdb, resourceid = 0, serial = 6907904, 
    error_code = 0 '\0', request_code = 0 '\0', minor_code = 0 '\0'}, 
  xkeymap = {type = 116, serial = 219, send_event = 0, display = 0x696800, 
    window = 0, 
    key_vector = "\1\0\0\3", '\0' <repeats 12 times>, ".\0\0\3", '\0' <repeats 11 times>}, pad = {116, 219, 0, 6907904, 0, 50331649, 0, 50331694, 0, 8201632, 
    4345298985, 0, 36861488, 178, 1393, 8203328, 140737274477152, 0, 0, 
    8201712, 50331690, 0, 36861488, 182}}

> One thing you might be able to do is try to spot a difference in xtrace
> dumps between the working and broken cases?

The only differences seem to be the order of the events (that is
slightly changed) and the numbers. I'm attaching an archive with
the results of the test...

-- 
Vincent Lefèvre <vincent at vinc17.org> - Web: <http://www.vinc17.org/>
100% accessible validated (X)HTML - Blog: <http://www.vinc17.org/blog/>
Work: CR INRIA - computer arithmetic / Arenaire project (LIP, ENS-Lyon)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: midori-xtrace.tar.xz
Type: application/octet-stream
Size: 20116 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/pkg-gnome-maintainers/attachments/20090813/96eb6574/attachment-0001.obj>


More information about the pkg-gnome-maintainers mailing list