Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 15 Sep 2003 16:48:00 -0400
From:      Christopher Nehren <apeiron@comcast.net>
To:        Joe Marcus Clarke <marcus@FreeBSD.org>
Cc:        gnome@FreeBSD.org
Subject:   Re: ports/56752: Using the Crux GTK+ 2.2 theme causes problems
Message-ID:  <3F662580.6070605@comcast.net>
In-Reply-To: <200309142120.h8ELKxos016846@freefall.freebsd.org>
References:  <200309142120.h8ELKxos016846@freefall.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Joe Marcus Clarke wrote:
> Synopsis: Using the Crux GTK+ 2.2 theme causes problems
> 
> State-Changed-From-To: open->feedback
> State-Changed-By: marcus
> State-Changed-When: Sun Sep 14 14:17:50 PDT 2003
> State-Changed-Why: 
> Looks like your diagnosis is correct.  However, in order to fix this, I need
> to know the exact versions of gnome-themes as well as have you recompile
> gnome-themes with debugging symbols, and capture the back trace again.
> Thanks.
> 
> http://www.freebsd.org/cgi/query-pr.cgi?pr=56752
> 

The version info is a bit curious: it happens with both 2.2.2 from the 
standard ports tree, and the 2.4 version from your separate tree. When I 
received this email asking me for a backtrace, I was in the middle of 
upgrading my setup to 2.4. If you'd like a backtrace for 2.2.2, I can 
provide it.

Here's the backtrace with debugging symbols for 2.4.

(gdb) bt
#0  0x2a2b0f97 in draw_vertical_gradient (drawable=0x888c420, gc=0x8168640,
     full_rect=0xbfaee294, clip_rect=0xbfbfd5a0, gradient=0x4ea)
     at crux-gradient.c:252
#1  0x2a2aa30e in draw_box (style=0x8214800, window=0x888c420,
     state_type=GTK_STATE_NORMAL, shadow_type=GTK_SHADOW_OUT, 
area=0xbfbfd690,
     widget=0x8ad3600, detail=0x28f7fde4 "dockitem_bin", x=1, y=397,
     width=1258, height=294) at crux-draw.c:1207
#2  0x283473f6 in gtk_paint_box () from /usr/X11R6/lib/libgtk-x11-2.0.so.200
#3  0x28f3ce64 in moz_gtk_radiobutton_get_metrics ()
    from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libgfx_gtk.so
#4  0x28f76e87 in 
nsNativeThemeGTK::DrawWidgetBackground(nsIRenderingContext*, nsIFrame*, 
unsigned char, nsRect const&, nsRect const&) ()
    from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libgfx_gtk.so
#5  0x29476349 in nsCSSRendering::PaintBackgroundWithSC(nsIPresContext*, 
nsIRenderingContext&, nsIFrame*, nsRect const&, nsRect const&, 
nsStyleBackground const&, nsStyleBorder const&, nsStylePadding const&, 
int) ()
    from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libgklayout.so
#6  0x29475286 in nsCSSRendering::PaintBackground(nsIPresContext*, 
nsIRenderingContext&, nsIFrame*, nsRect const&, nsRect const&, 
nsStyleBorder const&, nsStylePadding const&, int) ()
    from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libgklayout.so
#7  0x293c7c88 in nsFrame::PaintSelf(nsIPresContext*, 
nsIRenderingContext&, nsRect const&, int, int) ()
---Type <return> to continue, or q <return> to quit---
    from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libgklayout.so
#8  0x294b40ed in nsBoxFrame::Paint(nsIPresContext*, 
nsIRenderingContext&, nsRect const&, nsFramePaintLayer, unsigned) ()
    from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libgklayout.so
#9  0x294b4213 in nsBoxFrame::PaintChild(nsIPresContext*, 
nsIRenderingContext&, nsRect const&, nsIFrame*, nsFramePaintLayer, 
unsigned) ()
    from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libgklayout.so
#10 0x294b43ce in nsBoxFrame::PaintChildren(nsIPresContext*, 
nsIRenderingContext&, nsRect const&, nsFramePaintLayer, unsigned) ()
    from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libgklayout.so
#11 0x294b403e in nsBoxFrame::Paint(nsIPresContext*, 
nsIRenderingContext&, nsRect const&, nsFramePaintLayer, unsigned) ()
    from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libgklayout.so
#12 0x294b4213 in nsBoxFrame::PaintChild(nsIPresContext*, 
nsIRenderingContext&, nsRect const&, nsIFrame*, nsFramePaintLayer, 
unsigned) ()
    from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libgklayout.so
#13 0x294b43ce in nsBoxFrame::PaintChildren(nsIPresContext*, 
nsIRenderingContext&, nsRect const&, nsFramePaintLayer, unsigned) ()
    from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libgklayout.so
#14 0x294b403e in nsBoxFrame::Paint(nsIPresContext*, 
nsIRenderingContext&, nsRect const&, nsFramePaintLayer, unsigned) ()
    from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libgklayout.so
#15 0x294b4213 in nsBoxFrame::PaintChild(nsIPresContext*, 
nsIRenderingContext&, ---Type <return> to continue, or q <return> to quit---
nsRect const&, nsIFrame*, nsFramePaintLayer, unsigned) ()
    from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libgklayout.so
#16 0x294b43ce in nsBoxFrame::PaintChildren(nsIPresContext*, 
nsIRenderingContext&, nsRect const&, nsFramePaintLayer, unsigned) ()
    from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libgklayout.so
#17 0x294b403e in nsBoxFrame::Paint(nsIPresContext*, 
nsIRenderingContext&, nsRect const&, nsFramePaintLayer, unsigned) ()
    from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libgklayout.so
#18 0x294b4213 in nsBoxFrame::PaintChild(nsIPresContext*, 
nsIRenderingContext&, nsRect const&, nsIFrame*, nsFramePaintLayer, 
unsigned) ()
    from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libgklayout.so
#19 0x294b43ce in nsBoxFrame::PaintChildren(nsIPresContext*, 
nsIRenderingContext&, nsRect const&, nsFramePaintLayer, unsigned) ()
    from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libgklayout.so
#20 0x294b403e in nsBoxFrame::Paint(nsIPresContext*, 
nsIRenderingContext&, nsRect const&, nsFramePaintLayer, unsigned) ()
    from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libgklayout.so
#21 0x293c3edc in nsContainerFrame::PaintChild(nsIPresContext*, 
nsIRenderingContext&, nsRect const&, nsIFrame*, nsFramePaintLayer, 
unsigned) ()
    from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libgklayout.so
#22 0x293c3d94 in nsContainerFrame::PaintChildren(nsIPresContext*, 
nsIRenderingContext&, nsRect const&, nsFramePaintLayer, unsigned) ()
    from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libgklayout.so
---Type <return> to continue, or q <return> to quit---
#23 0x293c3d47 in nsContainerFrame::Paint(nsIPresContext*, 
nsIRenderingContext&, nsRect const&, nsFramePaintLayer, unsigned) ()
    from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libgklayout.so
#24 0x2940c902 in PresShell::Paint(nsIView*, nsIRenderingContext&, 
nsRect const&) () from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libgklayout.so
#25 0x29750003 in nsView::Paint(nsIRenderingContext&, nsRect const&, 
unsigned, int&) ()
    from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libgklayout.so
#26 0x297565c4 in 
nsViewManager::RenderDisplayListElement(DisplayListElement2*, 
nsIRenderingContext&, BlendingBuffers*, nsRect const&) ()
    from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libgklayout.so
#27 0x29756098 in nsViewManager::RenderViews(nsView*, 
nsIRenderingContext&, nsRegion const&, int) ()
    from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libgklayout.so
#28 0x29754a54 in nsViewManager::Refresh(nsView*, nsIRenderingContext*, 
nsIRegion*, unsigned) ()
    from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libgklayout.so
#29 0x29757b61 in nsViewManager::DispatchEvent(nsGUIEvent*, 
nsEventStatus*) ()
    from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libgklayout.so
#30 0x2974f716 in HandleNumbers(nsString const&, nsString&) ()
    from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libgklayout.so
#31 0x29137874 in nsCommonWidget::DispatchEvent(nsGUIEvent*, 
nsEventStatus&) ()
    from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libwidget_gtk2.so---Type 
<return> to continue, or q <return> to quit---

#32 0x2912e378 in nsWindow::OnExposeEvent(_GtkWidget*, _GdkEventExpose*) ()
    from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libwidget_gtk2.so
#33 0x2913301e in nsWindow::HideWindowChrome(int) ()
    from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libwidget_gtk2.so
#34 0x282f229f in gtk_propagate_event ()
    from /usr/X11R6/lib/libgtk-x11-2.0.so.200
#35 0x286e4ac8 in g_closure_invoke () from 
/usr/local/lib/libgobject-2.0.so.200
#36 0x286f74c4 in signal_emit_unlocked_R ()
    from /usr/local/lib/libgobject-2.0.so.200
#37 0x286f6231 in g_signal_emit_valist ()
    from /usr/local/lib/libgobject-2.0.so.200
#38 0x286f6744 in g_signal_emit () from /usr/local/lib/libgobject-2.0.so.200
#39 0x283d4b40 in gtk_widget_send_expose ()
    from /usr/X11R6/lib/libgtk-x11-2.0.so.200
#40 0x282f0d9a in gtk_main_do_event ()
    from /usr/X11R6/lib/libgtk-x11-2.0.so.200
#41 0x28498348 in gdk_window_clear_area_e ()
    from /usr/X11R6/lib/libgdk-x11-2.0.so.200
#42 0x284983e2 in gdk_window_process_all_updates ()
    from /usr/X11R6/lib/libgdk-x11-2.0.so.200
---Type <return> to continue, or q <return> to quit---
#43 0x28498451 in gdk_window_process_all_updates ()
    from /usr/X11R6/lib/libgdk-x11-2.0.so.200
#44 0x28739bc3 in g_idle_dispatch () from /usr/local/lib/libglib-2.0.so.200
#45 0x28737060 in g_main_dispatch () from /usr/local/lib/libglib-2.0.so.200
#46 0x2873807c in g_main_context_dispatch ()
    from /usr/local/lib/libglib-2.0.so.200
#47 0x28738385 in g_main_context_iterate ()
    from /usr/local/lib/libglib-2.0.so.200
#48 0x28738a82 in g_main_loop_run () from /usr/local/lib/libglib-2.0.so.200
#49 0x282f066f in gtk_main () from /usr/X11R6/lib/libgtk-x11-2.0.so.200
#50 0x291359e6 in nsAppShell::Run() ()
    from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libwidget_gtk2.so
#51 0x29aae8d4 in nsAppShellService::Run() ()
    from 
/usr/X11R6/lib/thunderbird/lib/mozilla-1.5b/components/libnsappshell.so
#52 0x08051092 in getCountry(nsAString const&, nsAString&) ()
#53 0x0805192e in xre_main(int, char**, nsXREAppData const&) ()
#54 0x0804d4de in main ()
#55 0x0804d375 in _start ()
(gdb) print *ptr_out
Cannot access memory at address 0xbfaee294
(gdb) print ptr_out
$8 = (guchar *) 0xbfaee294 <Address 0xbfaee294 out of bounds>
(gdb)

Based on the fact that it can draw one gradient -- the "normal" headers 
information box -- without problems, I think that with the full headers 
box it might be trying to access coordinates which are too large for the 
current data type, causing an out of bounds error.  I'm probably wrong, 
though -- someone please correct me. :)



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3F662580.6070605>