Closed
Bug 207773
Opened 21 years ago
Closed 21 years ago
Xft build crashes on specific url with Code2000/Code2001 installed [@ XftCharIndex]
Categories
(Core Graveyard :: GFX, defect)
Tracking
(Not tracked)
RESOLVED
DUPLICATE
of bug 183729
People
(Reporter: Biesinger, Assigned: blizzard)
References
()
Details
(Keywords: crash)
Crash Data
If Code2000 or Code2001 is installed (from http://home.att.net/~jameskass/) my Xft (both gtk1 and gtk2) build crashes when I load the above url. This is due to GetXftFont returning NULL, called from nsFontXft::GetWidth32. Here's the stack: #0 0x41df6620 in XftCharIndex () from /usr/X11R6/lib/libXft.so.2 #1 0x41df87be in XftTextExtents32 () from /usr/X11R6/lib/libXft.so.2 #2 0x41db0ac6 in nsFontXft::GetWidth32(unsigned) (this=0x8794ff0, aString=8353) at ../../../../gfx/src/gtk/nsFontMetricsXft.cpp:1628 #3 0x41dafd53 in nsFontMetricsXft::TextDimensionsCallback(unsigned, nsFontXft*, void*) (this=0x8798a38, aChar=8353, aFont=0x8794ff0, aData=0xbfffbb68) at ../../../../gfx/src/gtk/nsFontMetricsXft.cpp:1334 #4 0x41db1840 in StaticTextDimensionsCallback (aChar=8353, aFont=0x8794ff0, aData=0xbfffbb68) at ../../../../gfx/src/gtk/nsFontMetricsXft.cpp:2098 #5 0x41daf667 in nsFontMetricsXft::EnumerateGlyphs(unsigned*, unsigned, void (*)(unsigned, nsFontXft*, void*), void*) ( this=0x8798a38, aChars=0x41dd9060, aLen=75, aCallback=0x41db1814 <StaticTextDimensionsCallback>, aCallbackData=0xbfffbb68) at ../../../../gfx/src/gtk/nsFontMetricsXft.cpp:1205 #6 0x41dad7ee in nsFontMetricsXft::GetTextDimensions(unsigned short const*, unsigned, nsTextDimensions&, int*, nsRenderingContextGTK*) (this=0x8798a38, aString=0xbfffbfb8, aLength=75, aDimensions=@0xbfffbe70, aFontID=0x0, aContext=0x87cb970) at ../../../../gfx/src/gtk/nsFontMetricsXft.cpp:444 #7 0x41d8030f in nsRenderingContextGTK::GetTextDimensions(unsigned short const*, unsigned, nsTextDimensions&, int*) ( this=0x87cb970, aString=0xbfffbfb8, aLength=75, aDimensions=@0xbfffbe70, aFontID=0x0) at ../../../../gfx/src/gtk/nsRenderingContextGTK.cpp:1266 #8 0x41134e39 in nsTextFrame::MeasureText(nsIPresContext*, nsHTMLReflowState const&, nsTextTransformer&, nsILineBreaker*, nsTextFrame::TextStyle&, nsTextFrame::TextReflowData&) (this=0x87c0b10, aPresContext=0x8717980, aReflowState=@0xbfffc2f0, aTx=@0xbfffbf90, aLb=0x87c15f8, aTs=@0xbfffc130, aTextData=@0xbfffbf50) at ../../../../../layout/html/base/src/nsTextFrame.cpp:4909 #9 0x41135ee4 in nsTextFrame::Reflow(nsIPresContext*, nsHTMLReflowMetrics&, nsHTMLReflowState const&, unsigned&) ( this=0x87c0b10, aPresContext=0x8717980, aMetrics=@0xbfffc2b0, aReflowState=@0xbfffc2f0, aStatus=@0xbfffcc80) at ../../../../../layout/html/base/src/nsTextFrame.cpp:5459 #10 0x410dfce6 in nsLineLayout::ReflowFrame(nsIFrame*, unsigned&, nsHTMLReflowMetrics*, int&) (this=0xbfffcd80, aFrame=0x87c0b10, aReflowStatus=@0xbfffcc80, aMetrics=0x0, aPushedFrame=@0xbfffc484) at ../../../../../layout/html/base/src/nsLineLayout.cpp:1031 #11 0x410d9487 in nsInlineFrame::ReflowInlineFrame(nsIPresContext*, nsHTMLReflowState const&, nsInlineFrame::InlineReflowState&, nsIFrame*, unsigned&) (this=0x87c0aac, aPresContext=0x8717980, aReflowState=@0xbfffc6d0, irs=@0xbfffc560, aFrame=0x87c0b10, aStatus=@0xbfffcc80) at ../../../../../layout/html/base/src/nsInlineFrame.cpp:731 #12 0x410d8f1e in nsInlineFrame::ReflowFrames(nsIPresContext*, nsHTMLReflowState const&, nsInlineFrame::InlineReflowState&, nsHTMLReflowMetrics&, unsigned&) (this=0x87c0aac, aPresContext=0x8717980, aReflowState=@0xbfffc6d0, irs=@0xbfffc560, aMetrics=@0xbfffc690, aStatus=@0xbfffcc80) at ../../../../../layout/html/base/src/nsInlineFrame.cpp:545 #13 0x410d8c64 in nsInlineFrame::Reflow(nsIPresContext*, nsHTMLReflowMetrics&, nsHTMLReflowState const&, unsigned&) ( this=0x87c0aac, aPresContext=0x8717980, aMetrics=@0xbfffc690, aReflowState=@0xbfffc6d0, aStatus=@0xbfffcc80) at ../../../../../layout/html/base/src/nsInlineFrame.cpp:454 #14 0x410dfce6 in nsLineLayout::ReflowFrame(nsIFrame*, unsigned&, nsHTMLReflowMetrics*, int&) (this=0xbfffcd80, ---Type <return> to continue, or q <return> to quit--- aFrame=0x87c0aac, aReflowStatus=@0xbfffcc80, aMetrics=0x0, aPushedFrame=@0xbfffc864) at ../../../../../layout/html/base/src/nsLineLayout.cpp:1031 #15 0x410d9487 in nsInlineFrame::ReflowInlineFrame(nsIPresContext*, nsHTMLReflowState const&, nsInlineFrame::InlineReflowState&, nsIFrame*, unsigned&) (this=0x87c0a28, aPresContext=0x8717980, aReflowState=@0xbfffcab0, irs=@0xbfffc940, aFrame=0x87c0aac, aStatus=@0xbfffcc80) at ../../../../../layout/html/base/src/nsInlineFrame.cpp:731 #16 0x410d8f1e in nsInlineFrame::ReflowFrames(nsIPresContext*, nsHTMLReflowState const&, nsInlineFrame::InlineReflowState&, nsHTMLReflowMetrics&, unsigned&) (this=0x87c0a28, aPresContext=0x8717980, aReflowState=@0xbfffcab0, irs=@0xbfffc940, aMetrics=@0xbfffca70, aStatus=@0xbfffcc80) at ../../../../../layout/html/base/src/nsInlineFrame.cpp:545 #17 0x410d8c64 in nsInlineFrame::Reflow(nsIPresContext*, nsHTMLReflowMetrics&, nsHTMLReflowState const&, unsigned&) ( this=0x87c0a28, aPresContext=0x8717980, aMetrics=@0xbfffca70, aReflowState=@0xbfffcab0, aStatus=@0xbfffcc80) at ../../../../../layout/html/base/src/nsInlineFrame.cpp:454 #18 0x410dfce6 in nsLineLayout::ReflowFrame(nsIFrame*, unsigned&, nsHTMLReflowMetrics*, int&) (this=0xbfffcd80, aFrame=0x87c0a28, aReflowStatus=@0xbfffcc80, aMetrics=0x0, aPushedFrame=@0xbfffcc7c) at ../../../../../layout/html/base/src/nsLineLayout.cpp:1031 #19 0x41081b7d in nsBlockFrame::ReflowInlineFrame(nsBlockReflowState&, nsLineLayout&, nsLineList_iterator, nsIFrame*, unsigned char*) (this=0x87c0424, aState=@0xbfffd690, aLineLayout=@0xbfffcd80, aLine= {mCurrent = 0x87ef748, mListLink = 0x87c0460}, aFrame=0x87c0a28, aLineReflowStatus=0xbfffccff "") at ../../../../../layout/html/base/src/nsBlockFrame.cpp:3747 #20 0x41081791 in nsBlockFrame::DoReflowInlineFrames(nsBlockReflowState&, nsLineLayout&, nsLineList_iterator, int*, unsigned char*, int, int) (this=0x87c0424, aState=@0xbfffd690, aLineLayout=@0xbfffcd80, aLine= {mCurrent = 0x87ef748, mListLink = 0x87c0460}, aKeepReflowGoing=0xbfffd428, aLineReflowStatus=0xbfffd21f "\002", aUpdateMaximumWidth=0, aDamageDirtyArea=1) at ../../../../../layout/html/base/src/nsBlockFrame.cpp:3614 #21 0x41081461 in nsBlockFrame::DoReflowInlineFramesAuto(nsBlockReflowState&, nsLineList_iterator, int*, unsigned char*, int, int) (this=0x87c0424, aState=@0xbfffd690, aLine={mCurrent = 0x87ef748, mListLink = 0x87c0460}, aKeepReflowGoing=0xbfffd428, aLineReflowStatus=0xbfffd21f "\002", aUpdateMaximumWidth=0, aDamageDirtyArea=1) at ../../../../../layout/html/base/src/nsBlockFrame.cpp:3515 #22 0x4108123f in nsBlockFrame::ReflowInlineFrames(nsBlockReflowState&, nsLineList_iterator, int*, int, int) ( this=0x87c0424, aState=@0xbfffd690, aLine={mCurrent = 0x87ef748, mListLink = 0x87c0460}, aKeepReflowGoing=0xbfffd428, aDamageDirtyArea=1, aUpdateMaximumWidth=0) at ../../../../../layout/html/base/src/nsBlockFrame.cpp:3459 #23 0x4107f377 in nsBlockFrame::ReflowLine(nsBlockReflowState&, nsLineList_iterator, int*, int) (this=0x87c0424, aState=@0xbfffd690, aLine={mCurrent = 0x87ef748, mListLink = 0x87c0460}, aKeepReflowGoing=0xbfffd428, aDamageDirtyArea=1) at ../../../../../layout/html/base/src/nsBlockFrame.cpp:2567 #24 0x4107e406 in nsBlockFrame::ReflowDirtyLines(nsBlockReflowState&) (this=0x87c0424, aState=@0xbfffd690) at ../../../../../layout/html/base/src/nsBlockFrame.cpp:2213 #25 0x4107b1fe in nsBlockFrame::Reflow(nsIPresContext*, nsHTMLReflowMetrics&, nsHTMLReflowState const&, unsigned&) ( this=0x87c0424, aPresContext=0x8717980, aMetrics=@0xbfffdbb4, aReflowState=@0xbfffdaa0, aStatus=@0xbfffda6c) at ../../../../../layout/html/base/src/nsBlockFrame.cpp:853 #26 0x4108cfa3 in nsBlockReflowContext::ReflowBlock(nsRect const&, int, nsCollapsingMargin&, int, nsMargin&, nsHTMLReflowState&, unsigned&) (this=0xbfffdb70, aSpace=@0xbfffda80, aApplyTopMargin=1, aPrevBottomMargin=@0xbfffe0e4, aIsAdjacentWithTop=1, aComputedOffsets=@0xbfffda90, aFrameRS=@0xbfffdaa0, aFrameReflowStatus=@0xbfffda6c) at ../../../../../layout/html/base/src/nsBlockReflowContext.cpp:543 #27 0x41080a08 in nsBlockFrame::ReflowBlockFrame(nsBlockReflowState&, nsLineList_iterator, int*) (this=0x87c0218, aState=@0xbfffe080, aLine={mCurrent = 0x87c04f8, mListLink = 0x87c0254}, aKeepReflowGoing=0xbfffde18) at ../../../../../layout/html/base/src/nsBlockFrame.cpp:3224 #28 0x4107ede0 in nsBlockFrame::ReflowLine(nsBlockReflowState&, nsLineList_iterator, int*, int) (this=0x87c0218, aState=@0xbfffe080, aLine={mCurrent = 0x87c04f8, mListLink = 0x87c0254}, aKeepReflowGoing=0xbfffde18, aDamageDirtyArea=1) at ../../../../../layout/html/base/src/nsBlockFrame.cpp:2431 #29 0x4107e406 in nsBlockFrame::ReflowDirtyLines(nsBlockReflowState&) (this=0x87c0218, aState=@0xbfffe080) at ../../../../../layout/html/base/src/nsBlockFrame.cpp:2213 #30 0x4107b1fe in nsBlockFrame::Reflow(nsIPresContext*, nsHTMLReflowMetrics&, nsHTMLReflowState const&, unsigned&) ( this=0x87c0218, aPresContext=0x8717980, aMetrics=@0xbfffe430, aReflowState=@0xbfffe370, aStatus=@0xbfffe6a4) at ../../../../../layout/html/base/src/nsBlockFrame.cpp:853 #31 0x41098373 in nsContainerFrame::ReflowChild(nsIFrame*, nsIPresContext*, nsHTMLReflowMetrics&, nsHTMLReflowState const&, int, int, unsigned, unsigned&) (this=0x87b19f0, aKidFrame=0x87c0218, aPresContext=0x8717980, aDesiredSize=@0xbfffe430, aReflowState=@0xbfffe370, aX=0, aY=0, aFlags=0, aStatus=@0xbfffe6a4) at ../../../../../layout/html/base/src/nsContainerFrame.cpp:945 #32 0x410c0213 in CanvasFrame::Reflow(nsIPresContext*, nsHTMLReflowMetrics&, nsHTMLReflowState const&, unsigned&) ( this=0x87b19f0, aPresContext=0x8717980, aDesiredSize=@0xbfffe660, aReflowState=@0xbfffe510, aStatus=@0xbfffe6a4) at ../../../../../layout/html/base/src/nsHTMLFrame.cpp:585 #33 0x41202dba in nsBoxToBlockAdaptor::Reflow(nsBoxLayoutState&, nsIPresContext*, nsHTMLReflowMetrics&, nsHTMLReflowState const&, unsigned&, int, int, int, int, int) (this=0x87c0188, aState=@0xbfffeb30, aPresContext=0x8717980, aDesiredSize=@0xbfffe660, aReflowState=@0xbfffec70, aStatus=@0xbfffe6a4, aX=0, aY=0, aWidth=15150, aHeight=8520, aMoveFrame=1) at ../../../../../layout/xul/base/src/nsBoxToBlockAdaptor.cpp:899 #34 0x412027ec in nsBoxToBlockAdaptor::DoLayout(nsBoxLayoutState&) (this=0x87c0188, aState=@0xbfffeb30) at ../../../../../layout/xul/base/src/nsBoxToBlockAdaptor.cpp:644 #35 0x411f752d in nsBox::Layout(nsBoxLayoutState&) (this=0x87c0188, aState=@0xbfffeb30) at ../../../../../layout/xul/base/src/nsBox.cpp:1048 #36 0x411f1e59 in nsScrollBoxFrame::DoLayout(nsBoxLayoutState&) (this=0x87b1dfc, aState=@0xbfffeb30) at ../../../../../layout/xul/base/src/nsScrollBoxFrame.cpp:354 #37 0x411f752d in nsBox::Layout(nsBoxLayoutState&) (this=0x87b1e34, aState=@0xbfffeb30) at ../../../../../layout/xul/base/src/nsBox.cpp:1048 #38 0x41205103 in nsContainerBox::LayoutChildAt(nsBoxLayoutState&, nsIBox*, nsRect const&) (aState=@0xbfffeb30, aBox=0x87b1e34, aRect=@0xbfffe9e0) at ../../../../../layout/xul/base/src/nsContainerBox.cpp:650 #39 0x410b9bc8 in nsGfxScrollFrameInner::LayoutBox(nsBoxLayoutState&, nsIBox*, nsRect const&) (this=0x87b4fd8, aState=@0xbfffeb30, aBox=0x87b1e34, aRect=@0xbfffe9e0) at ../../../../../layout/html/base/src/nsGfxScrollFrame.cpp:1216 #40 0x410b9f04 in nsGfxScrollFrameInner::Layout(nsBoxLayoutState&) (this=0x87b4fd8, aState=@0xbfffeb30) at ../../../../../layout/html/base/src/nsGfxScrollFrame.cpp:1363 #41 0x410b9c17 in nsGfxScrollFrame::DoLayout(nsBoxLayoutState&) (this=0x87b1ce0, aState=@0xbfffeb30) at ../../../../../layout/html/base/src/nsGfxScrollFrame.cpp:1224 #42 0x411f752d in nsBox::Layout(nsBoxLayoutState&) (this=0x87b1d18, aState=@0xbfffeb30) at ../../../../../layout/xul/base/src/nsBox.cpp:1048 #43 0x411fbef9 in nsBoxFrame::Reflow(nsIPresContext*, nsHTMLReflowMetrics&, nsHTMLReflowState const&, unsigned&) ( this=0x87b1ce0, aPresContext=0x8717980, aDesiredSize=@0xbfffed40, aReflowState=@0xbfffec70, aStatus=@0xbfffedfc) at ../../../../../layout/xul/base/src/nsBoxFrame.cpp:891 #44 0x410b8bcb in nsGfxScrollFrame::Reflow(nsIPresContext*, nsHTMLReflowMetrics&, nsHTMLReflowState const&, unsigned&) ( this=0x87b1ce0, aPresContext=0x8717980, aDesiredSize=@0xbfffed40, aReflowState=@0xbfffec70, aStatus=@0xbfffedfc) at ../../../../../layout/html/base/src/nsGfxScrollFrame.cpp:847 #45 0x41098373 in nsContainerFrame::ReflowChild(nsIFrame*, nsIPresContext*, nsHTMLReflowMetrics&, nsHTMLReflowState const&, int, int, unsigned, unsigned&) (this=0x87b18e4, aKidFrame=0x87b1ce0, aPresContext=0x8717980, aDesiredSize=@0xbfffed40, aReflowState=@0xbfffec70, aX=0, aY=0, aFlags=0, aStatus=@0xbfffedfc) at ../../../../../layout/html/base/src/nsContainerFrame.cpp:945 #46 0x4113d7a8 in ViewportFrame::Reflow(nsIPresContext*, nsHTMLReflowMetrics&, nsHTMLReflowState const&, unsigned&) ( this=0x87b18e4, aPresContext=0x8717980, aDesiredSize=@0xbfffefb0, aReflowState=@0xbfffee00, aStatus=@0xbfffedfc) at ../../../../../layout/html/base/src/nsViewportFrame.cpp:261 #47 0x411020a0 in IncrementalReflow::Dispatch(nsIPresContext*, nsHTMLReflowMetrics&, nsSize const&, nsIRenderingContext&) ( this=0xbfffef50, aPresContext=0x8717980, aDesiredSize=@0xbfffefb0, aMaxSize=@0xbfffef90, aRendContext=@0x87cb970) at ../../../../../layout/html/base/src/nsPresShell.cpp:910 #48 0x411154bd in PresShell::ProcessReflowCommands(int) (this=0x8769398, aInterruptible=1) at ../../../../../layout/html/base/src/nsPresShell.cpp:6672 #49 0x411215f0 in ReflowEvent::HandleEvent() (this=0x87dc678) at ../../../../../layout/html/base/src/nsPresShell.cpp:6518 #50 0x41114e4a in HandlePLEvent (aEvent=0x87dc678) at ../../../../../layout/html/base/src/nsPresShell.cpp:6534 #51 0x408bfc68 in PL_HandleEvent (self=0x87dc678) at ../../../xpcom/threads/plevent.c:671 #52 0x408c03ae in PL_ProcessEventsBeforeID (aSelf=0x81310a0, aID=1269) at ../../../xpcom/threads/plevent.c:1688 #53 0x4197a3bb in processQueue(void*, void*) (aElement=0x81310a0, aData=0x4f5) at ../../../../widget/src/gtk/nsAppShell.cpp:443 #54 0x40875038 in nsVoidArray::EnumerateForwards(int (*)(void*, void*), void*) (this=0x818a198, aFunc=0x4197a38e <processQueue(void*, void*)>, aData=0x4f5) at ../../../xpcom/ds/nsVoidArray.cpp:648 #55 0x4197a3fc in nsAppShell::ProcessBeforeID(unsigned long) (aID=1269) at ../../../../widget/src/gtk/nsAppShell.cpp:451 #56 0x41989a7a in handle_gdk_event(_GdkEvent*, void*) (event=0x824af40, data=0x0) at ../../../../widget/src/gtk/nsGtkEventHandler.cpp:904 #57 0x402b04d7 in gdk_wm_protocols_filter () from /usr/lib/libgdk-1.2.so.0 #58 0x402df03d in g_get_current_time () from /usr/lib/libglib-1.2.so.0 #59 0x402df4f4 in g_get_current_time () from /usr/lib/libglib-1.2.so.0 #60 0x402df724 in g_main_run () from /usr/lib/libglib-1.2.so.0 #61 0x402007f7 in gtk_main () from /usr/lib/libgtk-1.2.so.0 #62 0x4197a086 in nsAppShell::Run() (this=0x818a7b0) at ../../../../widget/src/gtk/nsAppShell.cpp:328 #63 0x41924ab7 in nsAppShellService::Run() (this=0x8192c60) at ../../../../xpfe/appshell/src/nsAppShellService.cpp:478 #64 0x08067189 in main1 (argc=5, argv=0xbffff5b4, nativeApp=0x8102d88) at ../../../xpfe/bootstrap/nsAppRunner.cpp:1268 #65 0x08067cf8 in main (argc=5, argv=0xbffff5b4) at ../../../xpfe/bootstrap/nsAppRunner.cpp:1647 (gdb) up #1 0x41df87be in XftTextExtents32 () from /usr/X11R6/lib/libXft.so.2 (gdb) #2 0x41db0ac6 in nsFontXft::GetWidth32(unsigned) (this=0x8794ff0, aString=8353) at ../../../../gfx/src/gtk/nsFontMetricsXft.cpp:1628 1628 XftTextExtents32(GDK_DISPLAY(), mXftFont, &aString, 1, &glyphInfo); (gdb) print mXftFont $4 = (XftFont *) 0x0
Updated•21 years ago
|
Summary: Xft build crashes on specific url with Code2000/Code2001 installed [@ XftCharIndex] → Xft build crashes on specific url with Code2000/Code2001 installed [@ XftCharIndex]
Reporter | ||
Comment 2•21 years ago
|
||
oh _damn_, you are right. I did notice that bug while searching if this was filed, but it didn't occur to me to check world-readability. so sorry for wasting your time. marking as duplicate. *** This bug has been marked as a duplicate of 183729 ***
Updated•16 years ago
|
Product: Core → Core Graveyard
Updated•13 years ago
|
Crash Signature: [@ XftCharIndex]
You need to log in
before you can comment on or make changes to this bug.
Description
•