libxfcegui4 bug report (100% CPU load + hang)

Olivier Fourdan fourdan at xfce.org
Sun Sep 7 15:38:30 CEST 2003


And it's totally reproducible too...

On Sun, 2003-09-07 at 15:37, Olivier Fourdan wrote:
> Jasper,
> 
> This time I think it's a bug with the changes you made... Openning the
> MCS manager window causes a hang and uses 100% CPU.
> 
> These two calls make me think it's your change:
> 
> #5  0x40050fc1 in xfce_menubutton_set_stock_icon ()
>    from /usr/lib/libxfcegui4.so.1
> #6  0x40050c9c in xfce_menubutton_set_stock_icon ()
>    from /usr/lib/libxfcegui4.so.1
> 
> Here comes a backtrace:
> 
>  bt
> #0  scale_line (weights=0x83b86f8, n_x=3, n_y=3, dest=0x839bf20 "",
> dest_x=0,
>     dest_end=0x839bf4c "", dest_channels=4, dest_has_alpha=1,
> src=0x82f9960,
>     src_channels=4, src_has_alpha=1, x_init=0, x_step=74898,
> src_width=48,
>     check_size=0, color1=0, color2=0) at pixops.c:738
> #1  0x4032f527 in pixops_process (dest_buf=0x839bc08 "", render_x0=0,
>     render_y0=0, render_x1=42, render_y1=42, dest_rowstride=168,
>     dest_channels=4, dest_has_alpha=1, src_buf=0x40969738 "",
> src_width=48,
>     src_height=48, src_rowstride=192, src_channels=4, src_has_alpha=1,
>     scale_x=0.875, scale_y=0.875, check_x=0, check_y=0, check_size=0,
>     color1=0, color2=0, filter=0xbfffe270, line_func=0x4032ed64
> <scale_line>,
>     pixel_func=0x4032ecdc <scale_pixel>) at pixops.c:1048
> #2  0x40330c80 in pixops_scale (dest_buf=0x839bc08 "", render_x0=0,
>     render_y0=0, render_x1=42, render_y1=42, dest_rowstride=168,
>     dest_channels=4, dest_has_alpha=1, src_buf=0x40969738 "",
> src_width=48,
>     src_height=48, src_rowstride=192, src_channels=4, src_has_alpha=1,
>     scale_x=0.875, scale_y=0.875, interp_type=PIXOPS_INTERP_BILINEAR)
>     at pixops.c:1657
> #3  0x4032ad33 in gdk_pixbuf_scale (src=0x2a, dest=0x83a7438,
> dest_x=2246940,
>     dest_y=1, dest_width=42, dest_height=42,
> offset_x=0.080357142857142863,
>     offset_y=0.5, scale_x=0.5, scale_y=65536,
> interp_type=GDK_INTERP_BILINEAR)
>     at gdk-pixbuf-scale.c:75
> #4  0x4032b355 in gdk_pixbuf_scale_simple (src=0x8074860, dest_width=42,
>     dest_height=42, interp_type=GDK_INTERP_BILINEAR) at
> gdk-pixbuf-scale.c:243
> #5  0x40050fc1 in xfce_menubutton_set_stock_icon ()
>    from /usr/lib/libxfcegui4.so.1
> #6  0x40050c9c in xfce_menubutton_set_stock_icon ()
>    from /usr/lib/libxfcegui4.so.1
> #7  0x405310d6 in g_cclosure_marshal_VOID__BOXED ()
>    from /usr/lib/libgobject-2.0.so.0
> #8  0x40520bee in g_cclosure_new_swap () from
> /usr/lib/libgobject-2.0.so.0
> #9  0x4052094e in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
> #10 0x4052fd14 in g_signal_emit_by_name () from
> /usr/lib/libgobject-2.0.so.0
> #11 0x4052f56e in g_signal_emit_valist () from
> /usr/lib/libgobject-2.0.so.0
> #12 0x4052f767 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
> #13 0x4020ae30 in gtk_widget_size_allocate (widget=0x80ab7e0,
>     allocation=0xbfffe8f0) at gtkwidget.c:2380
> #14 0x40204ba6 in gtk_vbox_size_allocate (widget=0x80a9550,
>     allocation=0xbfffed40) at gtkvbox.c:259
> #15 0x405310d6 in g_cclosure_marshal_VOID__BOXED ()
>    from /usr/lib/libgobject-2.0.so.0
> #16 0x40520bee in g_cclosure_new_swap () from
> /usr/lib/libgobject-2.0.so.0
> #17 0x4052094e in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
> #18 0x4052fd14 in g_signal_emit_by_name () from
> /usr/lib/libgobject-2.0.so.0
> #19 0x4052f56e in g_signal_emit_valist () from
> /usr/lib/libgobject-2.0.so.0
> #20 0x4052f767 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
> #21 0x4020ae30 in gtk_widget_size_allocate (widget=0x80a9550,
> ---Type <return> to continue, or q <return> to quit---
>     allocation=0xbfffedc0) at gtkwidget.c:2380
> #22 0x401290cc in gtk_hbox_size_allocate (widget=0x80a90b8,
>     allocation=0xbffff210) at gtkhbox.c:267
> #23 0x405310d6 in g_cclosure_marshal_VOID__BOXED ()
>    from /usr/lib/libgobject-2.0.so.0
> #24 0x40520bee in g_cclosure_new_swap () from
> /usr/lib/libgobject-2.0.so.0
> #25 0x4052094e in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
> #26 0x4052fd14 in g_signal_emit_by_name () from
> /usr/lib/libgobject-2.0.so.0
> #27 0x4052f56e in g_signal_emit_valist () from
> /usr/lib/libgobject-2.0.so.0
> #28 0x4052f767 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
> #29 0x4020ae30 in gtk_widget_size_allocate (widget=0x80a90b8,
>     allocation=0xbffff270) at gtkwidget.c:2380
> #30 0x402060c2 in gtk_viewport_size_allocate (widget=0x80a9708,
>     allocation=0xbffff6d0) at gtkviewport.c:807
> #31 0x405310d6 in g_cclosure_marshal_VOID__BOXED ()
>    from /usr/lib/libgobject-2.0.so.0
> #32 0x40520bee in g_cclosure_new_swap () from
> /usr/lib/libgobject-2.0.so.0
> #33 0x4052094e in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
> #34 0x4052fd14 in g_signal_emit_by_name () from
> /usr/lib/libgobject-2.0.so.0
> #35 0x4052f56e in g_signal_emit_valist () from
> /usr/lib/libgobject-2.0.so.0
> #36 0x4052f767 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
> #37 0x4020ae30 in gtk_widget_size_allocate (widget=0x80a9708,
>     allocation=0x80a972c) at gtkwidget.c:2380
> #38 0x400ff995 in gtk_container_real_check_resize (container=0x80a9708)
>     at gtkcontainer.c:1193
> #39 0x405307e8 in g_cclosure_marshal_VOID__VOID ()
>    from /usr/lib/libgobject-2.0.so.0
> #40 0x40520bee in g_cclosure_new_swap () from
> /usr/lib/libgobject-2.0.so.0
> #41 0x4052094e in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
> #42 0x4052ff18 in g_signal_emit_by_name () from
> /usr/lib/libgobject-2.0.so.0
> #43 0x4052f56e in g_signal_emit_valist () from
> /usr/lib/libgobject-2.0.so.0
> #44 0x4052f767 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
> #45 0x400ff8cf in gtk_container_check_resize (container=0x80a9708)
>     at gtkcontainer.c:1178
> #46 0x400ff6cb in gtk_container_idle_sizer (data=0x0) at
> gtkcontainer.c:1102
> #47 0x4056fc6c in g_timeout_add () from /usr/lib/libglib-2.0.so.0
> #48 0x4056d4b6 in unblock_source () from /usr/lib/libglib-2.0.so.0
> #49 0x4056e3e9 in g_main_context_dispatch () from
> /usr/lib/libglib-2.0.so.0
> #50 0x4056e6ef in g_main_context_dispatch () from
> /usr/lib/libglib-2.0.so.0
> #51 0x4056ed4e in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
> #52 0x4014c9e7 in gtk_main () at gtkmain.c:1093
> #53 0x0804abbe in main ()
> #54 0x420158f7 in __libc_start_main () from /lib/i686/libc.so.6
> 
> Cheers,
-- 
Olivier Fourdan - fourdan at xfce.org
   
   Interoperability is the keyword, uniformity is a dead end. 
   http://www.xfce.org






More information about the Xfce4-dev mailing list