Closed Bug 518514 Opened 15 years ago Closed 15 years ago

crash @ [nsIFrame::GetStylePadding()] when switching to view->page style->no style

Categories

(Core :: Layout, defect)

x86_64
Windows Vista
defect
Not set
critical

Tracking

()

RESOLVED DUPLICATE of bug 514660

People

(Reporter: blassey, Unassigned)

References

()

Details

(Keywords: crash)

steps to reproduce:
1) go to http://www.bitstampede.com/2009/09/22/mdc-user-registration-disabled-for-now/
2) select "view"->"page style"->"no style" from the firefox me
3) firefox will crash

stack:
>	xul.dll!nsIFrame::GetStylePadding()  Line 132 + 0x1 bytes	C++
 	xul.dll!nsTextControlFrame::CalcIntrinsicSize(nsIRenderingContext * aRenderingContext=0x051a91c0, nsSize & aIntrinsicSize={...})  Line 1291 + 0xe bytes	C++
 	xul.dll!nsTextControlFrame::ComputeAutoSize(nsIRenderingContext * aRenderingContext=0x051a91c0, nsSize aCBSize={...}, int aAvailableWidth=63900, nsSize aMargin={...}, nsSize aBorder={...}, nsSize aPadding={...}, int aShrinkWrap=1)  Line 1718	C++
 	xul.dll!nsFrame::ComputeSize(nsIRenderingContext * aRenderingContext=0x051a91c0, nsSize aCBSize={...}, int aAvailableWidth=63900, nsSize aMargin={...}, nsSize aBorder={...}, nsSize aPadding={...}, int aShrinkWrap=1)  Line 3091	C++
 	xul.dll!nsHTMLReflowState::InitConstraints(nsPresContext * aPresContext=0x08f9b800, int aContainingBlockWidth=0, int aContainingBlockHeight=1073741824, const nsMargin * aBorder=0x00000002, const nsMargin * aPadding=0x094229cc)  Line 1858	C++
 	xul.dll!nsHTMLReflowState::Init(nsPresContext * aPresContext=0x08f9b800, int aContainingBlockWidth=-1, int aContainingBlockHeight=-1, const nsMargin * aBorder=0x00000000, const nsMargin * aPadding=0x00000000)  Line 281	C++
 	xul.dll!nsLineLayout::ReflowFrame(nsIFrame * aFrame=0x09201170, unsigned int & aReflowStatus=3592152, nsHTMLReflowMetrics * aMetrics=0x00000000, int & aPushedFrame=0)  Line 771	C++
 	xul.dll!nsBlockFrame::ReflowInlineFrame(nsBlockReflowState & aState={...}, nsLineLayout & aLineLayout={...}, nsLineList_iterator aLine={...}, nsIFrame * aFrame=0x00000000, LineReflowStatus * aLineReflowStatus=0x0036cfd8)  Line 3683	C++
 	xul.dll!nsBlockFrame::DoReflowInlineFrames(nsBlockReflowState & aState={...}, nsLineLayout & aLineLayout={...}, nsLineList_iterator aLine={...}, nsFlowAreaRect & aFloatAvailableSpace={...}, int & aAvailableSpaceHeight=0, nsFloatManager::SavedState * aFloatStateBeforeLine=0x0036d01c, int * aKeepReflowGoing=0x0036d1bc, LineReflowStatus * aLineReflowStatus=0x0036d010, int aAllowPullUp=1)  Line 3499	C++
 	xul.dll!nsBlockFrame::ReflowInlineFrames(nsBlockReflowState & aState={...}, nsLineList_iterator aLine={...}, int * aKeepReflowGoing=0x0036d1bc)  Line 3355 + 0x34 bytes	C++
 	xul.dll!nsBlockFrame::ReflowLine(nsBlockReflowState & aState={...}, nsLineList_iterator aLine={...}, int * aKeepReflowGoing=0x0036d1bc)  Line 2406 + 0x13 bytes	C++
 	xul.dll!nsBlockFrame::ReflowDirtyLines(nsBlockReflowState & aState={...})  Line 1872	C++
 	xul.dll!nsBlockFrame::Reflow(nsPresContext * aPresContext=, nsHTMLReflowMetrics & aMetrics=, const nsHTMLReflowState & aReflowState=, unsigned int & aStatus=)  Line 981	C++
 	xul.dll!nsFrame::ComputeSize(nsIRenderingContext * aRenderingContext=0x000029d6, nsSize aCBSize={...}, int aAvailableWidth=150583296, nsSize aMargin={...}, nsSize aBorder={...}, nsSize aPadding={...}, int aShrinkWrap=1485102641)  Line 3091	C++
 	xul.dll!nsHTMLReflowState::Init(nsPresContext * aPresContext=0x58854a0f, int aContainingBlockWidth=151977800, int aContainingBlockHeight=3594360, const nsMargin * aBorder=0x092049d0, const nsMargin * aPadding=0x0036d754)  Line 288	C++
 	xul.dll!nsBlockFrame::ReflowLine(nsBlockReflowState & aState={...}, nsLineList_iterator aLine={...}, int * aKeepReflowGoing=0x0036d754)  Line 2422	C++
 	xul.dll!nsBlockFrame::ReflowDirtyLines(nsBlockReflowState & aState={...})  Line 1872	C++
 	xul.dll!nsBlockFrame::Reflow(nsPresContext * aPresContext=, nsHTMLReflowMetrics & aMetrics=, const nsHTMLReflowState & aReflowState=, unsigned int & aStatus=)  Line 981	C++
 	xul.dll!nsBlockReflowContext::ReflowBlock(const nsRect & aSpace={...}, int aApplyTopMargin=1, nsCollapsingMargin & aPrevMargin={...}, int aClearance=0, int aIsAdjacentWithTop=0, nsLineBox * aLine=0x00000000, nsHTMLReflowState & aFrameRS={...}, unsigned int & aFrameReflowStatus=0, nsBlockReflowState & aState={...})  Line 310 + 0x2a bytes	C++
 	xul.dll!nsBlockFrame::ReflowBlockFrame(nsBlockReflowState & aState={...}, nsLineList_iterator aLine={...}, int * aKeepReflowGoing=0x0036dcec)  Line 3078	C++
 	xul.dll!nsBlockFrame::ReflowLine(nsBlockReflowState & aState={...}, nsLineList_iterator aLine={...}, int * aKeepReflowGoing=0x0036dcec)  Line 2351 + 0x22 bytes	C++
 	xul.dll!nsBlockFrame::ReflowDirtyLines(nsBlockReflowState & aState={...})  Line 1872	C++
 	xul.dll!nsBlockFrame::Reflow(nsPresContext * aPresContext=, nsHTMLReflowMetrics & aMetrics=, const nsHTMLReflowState & aReflowState=, unsigned int & aStatus=)  Line 981	C++
 	xul.dll!nsFrame::ComputeSize(nsIRenderingContext * aRenderingContext=0x0001d506, nsSize aCBSize={...}, int aAvailableWidth=150583296, nsSize aMargin={...}, nsSize aBorder={...}, nsSize aPadding={...}, int aShrinkWrap=1485102641)  Line 3091	C++
 	xul.dll!nsHTMLReflowState::Init(nsPresContext * aPresContext=0x00000000, int aContainingBlockWidth=0, int aContainingBlockHeight=0, const nsMargin * aBorder=0x09129aa8, const nsMargin * aPadding=0x00000001)  Line 288	C++
 	xul.dll!nsHTMLReflowState::nsHTMLReflowState(nsPresContext * aPresContext=0x588c932f, const nsHTMLReflowState & aParentReflowState={...}, nsIFrame * aFrame=0x000003c0, const nsSize & aAvailableSpace={...}, int aContainingBlockWidth=64860, int aContainingBlockHeight=1073741824, int aInit=151924832)  Line 176	C++
 	xul.dll!nsFrame::ComputeSize(nsIRenderingContext * aRenderingContext=0x000001e0, nsSize aCBSize={...}, int aAvailableWidth=150583296, nsSize aMargin={...}, nsSize aBorder={...}, nsSize aPadding={...}, int aShrinkWrap=1485102641)  Line 3091	C++
 	xul.dll!nsHTMLReflowState::Init(nsPresContext * aPresContext=0x091297c0, int aContainingBlockWidth=3598656, int aContainingBlockHeight=152214432, const nsMargin * aBorder=0x0036e81c, const nsMargin * aPadding=0x0036e940)  Line 288	C++
 	xul.dll!nsBlockFrame::ReflowLine(nsBlockReflowState & aState={...}, nsLineList_iterator aLine={...}, int * aKeepReflowGoing=0x091297c0)  Line 2351 + 0x22 bytes	C++
 	xul.dll!nsCOMPtr_base::~nsCOMPtr_base()  Line 82	C++
 	xul.dll!nsIFrame::BuildDisplayListForChild(nsDisplayListBuilder * aBuilder=, nsIFrame * aChild=, const nsRect & aDirtyRect=, const nsDisplayListSet & aLists=, unsigned int aFlags=)  Line 1504 + 0x159 bytes	C++
 	xul.dll!nsFrame::ComputeSize(nsIRenderingContext * aRenderingContext=0x00000000, nsSize aCBSize={...}, int aAvailableWidth=0, nsSize aMargin={...}, nsSize aBorder={...}, nsSize aPadding={...}, int aShrinkWrap=0)  Line 3091	C++
 	xul.dll!nsHTMLReflowState::InitConstraints(nsPresContext * aPresContext=0x091297c0, int aContainingBlockWidth=150583296, int aContainingBlockHeight=3599012, const nsMargin * aBorder=0x0036eae0, const nsMargin * aPadding=0x0036ec2c)  Line 1858	C++
 	xul.dll!nsContainerFrame::ReflowChild(nsIFrame * aKidFrame=0x091297c0, nsPresContext * aPresContext=0x08f9b800, nsHTMLReflowMetrics & aDesiredSize={...}, const nsHTMLReflowState & aReflowState={...}, int aX=0, int aY=0, unsigned int aFlags=0, unsigned int & aStatus=0, nsOverflowContinuationTracker * aTracker=0x00000000)  Line 792 + 0x1b bytes	C++
 	xul.dll!CanvasFrame::Reflow(nsPresContext * aPresContext=, nsHTMLReflowMetrics & aDesiredSize=, const nsHTMLReflowState & aReflowState=, unsigned int & aStatus=)  Line 556	C++
 	xul.dll!nsBlockFrame::InsertFrames(nsIAtom * aListName=0x08f9b800, nsIFrame * aPrevFrame=0x0036ed34, nsFrameList & aFrameList={...})  Line 4655	C++
 	xul.dll!nsContainerFrame::ReflowChild(nsIFrame * aKidFrame=0x5890bacd, nsPresContext * aPresContext=0x091252c0, nsHTMLReflowMetrics & aDesiredSize={...}, const nsHTMLReflowState & aReflowState={...}, int aX=3599408, int aY=0, unsigned int aFlags=0, unsigned int & aStatus=, nsOverflowContinuationTracker * aTracker=0x0036ec2c)  Line 792 + 0x1b bytes	C++
 	xul.dll!nsHTMLReflowState::InitResizeFlags(nsPresContext * aPresContext=0x0907a3c4)  Line 420 + 0x4 bytes	C++
 	xul.dll!PL_DHashTableOperate(PLDHashTable * table=0x00000000, const void * key=0x00000000, PLDHashOperator op=PL_DHASH_LOOKUP)  Line 625 + 0x9 bytes	C
 	xul.dll!nsFrameManager::GetPrimaryFrameFor(nsIContent * aContent=, int aIndexHint=)  Line 349	C++
 	xul.dll!nsGenericElement::Release()  Line 4234 + 0x11 bytes	C++
 	xul.dll!nsEvent::~nsEvent()  Line 485 + 0x27 bytes	C++
 	xul.dll!nsGenericElement::Release()  Line 4234 + 0x11 bytes	C++
 	xul.dll!nsGenericElement::Release()  Line 4234 + 0x11 bytes	C++
 	xul.dll!nsCOMPtr_base::~nsCOMPtr_base()  Line 82	C++
 	xul.dll!nsEventStateManager::NotifyMouseOver(nsGUIEvent * aEvent=0x00000000, nsIContent * aContent=0x041f5040)  Line 3633 + 0x8 bytes	C++
 	05dce1cc()	

registers:
EAX = 00000000 EBX = 09201170 ECX = 00000000 EDX = 00000000 ESI = 090F49A0 EDI = 0036CDB8 
EIP = 58ABD134 ESP = 0036CCC0 EBP = 0036CD00 EFL = 00010246 

00000018 = ???????? 

disassembly:
STYLE_STRUCT_RESET(Margin, nsnull, ())
  STYLE_STRUCT_TEST_CODE(      })
  STYLE_STRUCT_TEST_CODE(    })
  STYLE_STRUCT_TEST_CODE(  })
  STYLE_STRUCT_TEST_CODE(} else if (STYLE_STRUCT_TEST < 20) {)
  STYLE_STRUCT_TEST_CODE(  if (STYLE_STRUCT_TEST < 18) {)
  STYLE_STRUCT_TEST_CODE(    if (STYLE_STRUCT_TEST == 16) {)
STYLE_STRUCT_RESET(Padding, nsnull, ())
58ABD133  push        ecx  
58ABD134  mov         eax,dword ptr [eax+18h] 
58ABD137  call        nsStyleContext::GetStylePadding (588D9C40h) 
58ABD13C  pop         ecx  
58ABD13D  ret              
--- No source file -------------------------------------------------------------
[thunk]:nsHTMLSharedElement::GetDir`adjustor{20}':
58ABD13E  sub         dword ptr [esp+4],14h 
58ABD143  jmp         nsHTMLMapElement::GetDir (58D9D60Ch) 
[thunk]:nsHTMLSharedElement::GetDir`adjustor{16}':
58ABD148  sub         dword ptr [esp+4],10h 
58ABD14D  jmp         nsHTMLMapElement::GetDir (58D9D60Ch) 
[thunk]:nsHTMLSharedElement::GetDir`adjustor{12}':
58ABD152  sub         dword ptr [esp+4],0Ch 
58ABD157  jmp         nsHTMLMapElement::GetDir (58D9D60Ch) 
[thunk]:nsHTMLSharedElement::GetDir`adjustor{8}':
58ABD15C  sub         dword ptr [esp+4],8 
58ABD161  jmp         nsHTMLMapElement::GetDir (58D9D60Ch) 
[thunk]:nsHTMLSharedElement::GetDir`adjustor{4}':
58ABD166  sub         dword ptr [esp+4],4 
58ABD16B  jmp         nsHTMLMapElement::GetDir (58D9D60Ch) 
[thunk]:nsHTMLSharedElement::GetDir`adjustor{24}':
Seems a duplicate of / related to Bug 514660.
Severity: normal → critical
Keywords: crash
Doesn't crash for me with Firefox trunk on Vista.  Guessing it's a dup.
Status: NEW → RESOLVED
Closed: 15 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.