← Back to team overview

compiz team mailing list archive

[Bug 828085] Re: gtk-window-decorator crashed with SIGSEGV in get_button_position()

 

Figuring out how to get a backtrace was a bit tricky, there should be a
howto or somesuch .. https://wiki.edubuntu.org/DebuggingProgramCrash is
incomplete and lacks detail.

root@tosh:/usr/src# gdb /usr/lib/debug/usr/bin/gtk-window-decorator /var/crash/_usr_bin_gtk-window-decorator.1000.core
GNU gdb (Ubuntu/Linaro 7.3-0ubuntu2) 7.3-2011.08
Copyright (C) 2011 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://bugs.launchpad.net/gdb-linaro/>...
Reading symbols from /usr/lib/debug/usr/bin/gtk-window-decorator...done.

warning: core file may not match specified executable file.
[New LWP 2493]
[New LWP 2495]
[New LWP 3025]
[New LWP 3024]
Core was generated by `/usr/bin/gtk-window-decorator'.
Program terminated with signal 11, Segmentation fault.
#0  get_button_position (d=<optimized out>, i=3, width=1366, height=768, x=0x7fffd04187b0, y=0x7fffd04187b4, w=0x7fffd04187b8, h=0x7fffd04187bc) at /build/buildd/compiz-0.9.5.0/gtk/window-decorator/cairo.c:832
832	/build/buildd/compiz-0.9.5.0/gtk/window-decorator/cairo.c: No such file or directory.
	in /build/buildd/compiz-0.9.5.0/gtk/window-decorator/cairo.c
(gdb) backtrace full
#0  get_button_position (d=<optimized out>, i=3, width=1366, height=768, x=0x7fffd04187b0, y=0x7fffd04187b4, w=0x7fffd04187b8, h=0x7fffd04187bc) at /build/buildd/compiz-0.9.5.0/gtk/window-decorator/cairo.c:832
No locals.
#1  0x00007fffd0418858 in ?? ()
No symbol table info available.
#2  0x0000000000413d66 in position_action_menu (menu=0x2532000, x=0x7fffd0418858, y=0x7fffd041885c, push_in=0x2532158, user_data=0x24f14b0) at /build/buildd/compiz-0.9.5.0/gtk/window-decorator/actionmenu.c:44
        win = 0x24f14b0
        frame = 0x24f0930
        d = <optimized out>
        bx = 6
        by = 0
        width = 1366
        height = 768
#3  0x00007fffd04187b8 in ?? ()
No symbol table info available.
#4  0x00007fffd04187bc in ?? ()
No symbol table info available.
#5  0x000000000250e860 in ?? ()
No symbol table info available.
#6  0x00000000025082e0 in ?? ()
No symbol table info available.
#7  0x0000000002532158 in ?? ()
No symbol table info available.
#8  0x0000000002532000 in ?? ()
No symbol table info available.
#9  0x00000000000001fd in ?? ()
No symbol table info available.
#10 0x000000000250e860 in ?? ()
No symbol table info available.
#11 0x0000000000000006 in ?? ()
No symbol table info available.
#12 0x0000030000000556 in ?? ()
No symbol table info available.
#13 0x0000000000000001 in ?? ()
No symbol table info available.
#14 0x0000000002532000 in ?? ()
No symbol table info available.
#15 0x0000000002532150 in ?? ()
No symbol table info available.
#16 0x00000000023f8000 in ?? ()
No symbol table info available.
#17 0x0000000000000001 in ?? ()
No symbol table info available.
#18 0x0000000000000001 in ?? ()
No symbol table info available.
#19 0x0000000000413cb0 in ?? () at /build/buildd/compiz-0.9.5.0/gtk/window-decorator/actionmenu.c:28


##################

grep -n ^ /usr/src/compiz-0.9.5.0/gtk/window-decorator/cairo.c | head -n
850 | tail -n 50

809:gboolean
810:get_button_position (decor_t *d,
811:		     gint    i,
812:		     gint    width,
813:		     gint    height,
814:		     gint    *x,
815:		     gint    *y,
816:		     gint    *w,
817:		     gint    *h)
818:{
819:    if (i > BUTTON_MENU)
820:	return FALSE;
821:
822:    if (d->frame_window)
823:    {
824:	*x = bpos[i].x + bpos[i].xw * width + d->frame->win_extents.left + 4;
825:	*y = bpos[i].y + bpos[i].yh * height + bpos[i].yth *
826:	    (d->frame->titlebar_height - 17) + d->frame->win_extents.top + 2;
827:    }
828:    else
829:    {
830:	*x = bpos[i].x + bpos[i].xw * width;

#0  get_button_position (d=<optimized out>, i=3, width=1366, height=768, x=0x7fffd04187b0, y=0x7fffd04187b4, w=0x7fffd04187b8, h=0x7fffd04187bc) 
at /build/buildd/compiz-0.9.5.0/gtk/window-decorator/cairo.c:832

831:	*y = bpos[i].y + bpos[i].yh * height + bpos[i].yth *
832:	    (d->frame->titlebar_height - 17);
833:    }
834:
835:    *w = bpos[i].w + bpos[i].ww * width;
836:    *h = bpos[i].h + bpos[i].hh * height + bpos[i].hth +
837:	(d->frame->titlebar_height - 17);
838:
839:    /* hack to position multiple buttons on the right */
840:    if (i != BUTTON_MENU)
841:	*x -= 10 + 16 * i;
842:
843:    return TRUE;
844:}

-- 
You received this bug notification because you are a member of compiz
packagers, which is subscribed to compiz in Ubuntu.
https://bugs.launchpad.net/bugs/828085

Title:
  gtk-window-decorator crashed with SIGSEGV in get_button_position()

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/compiz/+bug/828085/+subscriptions