Closed Bug 2477 Opened 26 years ago Closed 25 years ago

problems with form having tables inside tables which contain form elements

Categories

(Core :: Layout: Tables, defect, P3)

x86
Windows NT
defect

Tracking

()

VERIFIED FIXED

People

(Reporter: jty, Assigned: rods)

References

()

Details

Forms which have tables nested in tables containing form elements (afaik
<select>), will crash.

see http://www.citec.fi/~jty/weirdbug-select-jst-stack.txt for a stack trace.
Assignee: troy → karnaze
Component: Layout → HTMLTables
It may be a parser problem or it may be related to recent changes for scrolling
row group frames

Stack trace:

NTDLL! 77f76148()
nsDebug::Assertion(const char * 0x0067a050, const char * 0x0067a034, const char
* 0x00679ffc, int 433) line 130 + 13 bytes
nsContainerFrame::DeleteChildsNextInFlow(nsIPresContext & {...}, nsIFrame *
0x00fadbe0) line 433 + 34 bytes
nsContainerFrame::ReflowChild(nsIFrame * 0x00fadbe0, nsIPresContext & {...},
nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned int & 0)
line 380
nsTableFrame::IR_TargetIsChild(nsTableFrame * const 0x00fac220, nsIPresContext &
{...}, nsHTMLReflowMetrics & {...}, InnerTableReflowState & {...}, unsigned int
& 0, nsIFrame * 0x00fadbe0) line 3082 + 34 bytes
nsTableFrame::IncrementalReflow(nsTableFrame * const 0x00fac220, nsIPresContext
& {...}, nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned
int & 0) line 2676 + 35 bytes
nsTableFrame::Reflow(nsTableFrame * const 0x00fac224, nsIPresContext & {...},
nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned int & 0)
line 2346 + 35 bytes
nsContainerFrame::ReflowChild(nsIFrame * 0x00fac220, nsIPresContext & {...},
nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned int & 0)
line 363 + 28 bytes
nsTableOuterFrame::IR_InnerTableReflow(nsTableOuterFrame * const 0x00fac320,
nsIPresContext & {...}, nsHTMLReflowMetrics & {...}, OuterTableReflowState &
{...}, unsigned int & 0) line 469 + 34 bytes
nsTableOuterFrame::IR_TargetIsInnerTableFrame(nsTableOuterFrame * const
0x00fac320, nsIPresContext & {...}, nsHTMLReflowMetrics & {...},
OuterTableReflowState & {...}, unsigned int & 0) line 252 + 31 bytes
nsTableOuterFrame::IR_TargetIsChild(nsTableOuterFrame * const 0x00fac320,
nsIPresContext & {...}, nsHTMLReflowMetrics & {...}, OuterTableReflowState &
{...}, unsigned int & 0, nsIFrame * 0x00fac220) line 225 + 31 bytes
nsTableOuterFrame::IncrementalReflow(nsTableOuterFrame * const 0x00fac320,
nsIPresContext & {...}, nsHTMLReflowMetrics & {...}, OuterTableReflowState &
{...}, unsigned int & 0) line 210 + 35 bytes
nsTableOuterFrame::Reflow(nsTableOuterFrame * const 0x00fac324, nsIPresContext &
{...}, nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned
int & 0) line 883 + 35 bytes
nsBlockReflowContext::ReflowBlock(nsIFrame * 0x00fac320, const nsRect & {x=0 y=0
width=1320 height=705}, int 1, nsMargin & {top=0 right=0 bottom=0 left=0},
unsigned int & 0) line 155 + 39 bytes
nsBaseIBFrame::ReflowBlockFrame(nsBlockReflowState & {...}, nsLineBox *
0x00fa76f0, int & 1) line 2126 + 45 bytes
nsBaseIBFrame::ReflowLine(nsBlockReflowState & {...}, nsLineBox * 0x00fa76f0,
int & 1) line 1592 + 20 bytes
nsBaseIBFrame::ReflowDirtyLines(nsBlockReflowState & {...}) line 1328 + 26 bytes
nsBlockFrame::ReflowDirtyLines(nsBlockReflowState & {...}) line 4868
nsBaseIBFrame::Reflow(nsBaseIBFrame * const 0x00fa7b44, nsIPresContext & {...},
nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned int & 0)
line 803 + 25 bytes
nsBlockFrame::Reflow(nsBlockFrame * const 0x00fa7b44, nsIPresContext & {...},
nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned int & 0)
line 4501 + 25 bytes
nsAreaFrame::Reflow(nsAreaFrame * const 0x00fa7b44, nsIPresContext & {...},
nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned int & 0)
line 436 + 25 bytes
nsContainerFrame::ReflowChild(nsIFrame * 0x00fa7b40, nsIPresContext & {...},
nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned int & 0)
line 363 + 28 bytes
nsFieldSetFrame::Reflow(nsFieldSetFrame * const 0x00fab1f4, nsIPresContext &
{...}, nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned
int & 0) line 333
nsBlockReflowContext::ReflowBlock(nsIFrame * 0x00fab1f0, const nsRect & {x=0 y=0
width=1260 height=1073741824}, int 1, nsMargin & {top=0 right=0 bottom=0
left=0}, unsigned int & 0) line 155 + 39 bytes
nsBaseIBFrame::ReflowBlockFrame(nsBlockReflowState & {...}, nsLineBox *
0x00fa7530, int & 1) line 2126 + 45 bytes
nsBaseIBFrame::ReflowLine(nsBlockReflowState & {...}, nsLineBox * 0x00fa7530,
int & 1) line 1592 + 20 bytes
nsBaseIBFrame::ReflowDirtyLines(nsBlockReflowState & {...}) line 1328 + 26 bytes
nsBlockFrame::ReflowDirtyLines(nsBlockReflowState & {...}) line 4868
nsBaseIBFrame::Reflow(nsBaseIBFrame * const 0x00fabc04, nsIPresContext & {...},
nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned int & 0)
line 803 + 25 bytes
nsBlockFrame::Reflow(nsBlockFrame * const 0x00fabc04, nsIPresContext & {...},
nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned int & 0)
line 4501 + 25 bytes
nsAreaFrame::Reflow(nsAreaFrame * const 0x00fabc04, nsIPresContext & {...},
nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned int & 0)
line 436 + 25 bytes
nsContainerFrame::ReflowChild(nsIFrame * 0x00fabc00, nsIPresContext & {...},
nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned int & 0)
line 363 + 28 bytes
nsTableCellFrame::Reflow(nsTableCellFrame * const 0x00fabd04, nsIPresContext &
{...}, nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned
int & 0) line 428
nsContainerFrame::ReflowChild(nsIFrame * 0x00fabd00, nsIPresContext & {...},
nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned int & 0)
line 363 + 28 bytes
nsTableRowFrame::IR_TargetIsChild(nsTableRowFrame * const 0x00faa120,
nsIPresContext & {...}, nsHTMLReflowMetrics & {...}, RowReflowState & {...},
unsigned int & 0, nsIFrame * 0x00fabd00) line 1274 + 34 bytes
nsTableRowFrame::IncrementalReflow(nsTableRowFrame * const 0x00faa120,
nsIPresContext & {...}, nsHTMLReflowMetrics & {...}, RowReflowState & {...},
unsigned int & 0) line 961 + 35 bytes
nsTableRowFrame::Reflow(nsTableRowFrame * const 0x00faa124, nsIPresContext &
{...}, nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned
int & 0) line 1416 + 35 bytes
nsContainerFrame::ReflowChild(nsIFrame * 0x00faa120, nsIPresContext & {...},
nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned int & 0)
line 363 + 28 bytes
nsTableRowGroupFrame::IR_TargetIsChild(nsTableRowGroupFrame * const 0x00faa4a0,
nsIPresContext & {...}, nsHTMLReflowMetrics & {...}, RowGroupReflowState &
{...}, unsigned int & 0, nsIFrame * 0x00faa120) line 1321 + 34 bytes
nsTableRowGroupFrame::IncrementalReflow(nsTableRowGroupFrame * const 0x00faa4a0,
nsIPresContext & {...}, nsHTMLReflowMetrics & {...}, RowGroupReflowState &
{...}, unsigned int & 0) line 1057 + 35 bytes
nsTableRowGroupFrame::Reflow(nsTableRowGroupFrame * const 0x00faa4a4,
nsIPresContext & {...}, nsHTMLReflowMetrics & {...}, const nsHTMLReflowState &
{...}, unsigned int & 0) line 950 + 35 bytes
nsContainerFrame::ReflowChild(nsIFrame * 0x00faa4a0, nsIPresContext & {...},
nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned int & 0)
line 363 + 28 bytes
nsTableFrame::IR_TargetIsChild(nsTableFrame * const 0x00faaaa0, nsIPresContext &
{...}, nsHTMLReflowMetrics & {...}, InnerTableReflowState & {...}, unsigned int
& 0, nsIFrame * 0x00faa4a0) line 3082 + 34 bytes
nsTableFrame::IncrementalReflow(nsTableFrame * const 0x00faaaa0, nsIPresContext
& {...}, nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned
int & 0) line 2676 + 35 bytes
nsTableFrame::Reflow(nsTableFrame * const 0x00faaaa4, nsIPresContext & {...},
nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned int & 0)
line 2346 + 35 bytes
nsContainerFrame::ReflowChild(nsIFrame * 0x00faaaa0, nsIPresContext & {...},
nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned int & 0)
line 363 + 28 bytes
nsTableOuterFrame::IR_InnerTableReflow(nsTableOuterFrame * const 0x00faaba0,
nsIPresContext & {...}, nsHTMLReflowMetrics & {...}, OuterTableReflowState &
{...}, unsigned int & 0) line 469 + 34 bytes
nsTableOuterFrame::IR_TargetIsInnerTableFrame(nsTableOuterFrame * const
0x00faaba0, nsIPresContext & {...}, nsHTMLReflowMetrics & {...},
OuterTableReflowState & {...}, unsigned int & 0) line 252 + 31 bytes
nsTableOuterFrame::IR_TargetIsChild(nsTableOuterFrame * const 0x00faaba0,
nsIPresContext & {...}, nsHTMLReflowMetrics & {...}, OuterTableReflowState &
{...}, unsigned int & 0, nsIFrame * 0x00faaaa0) line 225 + 31 bytes
nsTableOuterFrame::IncrementalReflow(nsTableOuterFrame * const 0x00faaba0,
nsIPresContext & {...}, nsHTMLReflowMetrics & {...}, OuterTableReflowState &
{...}, unsigned int & 0) line 210 + 35 bytes
nsTableOuterFrame::Reflow(nsTableOuterFrame * const 0x00faaba4, nsIPresContext &
{...}, nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned
int & 0) line 883 + 35 bytes
nsBlockReflowContext::ReflowBlock(nsIFrame * 0x00faaba0, const nsRect & {x=0 y=0
width=10110 height=1073741824}, int 1, nsMargin & {top=0 right=0 bottom=0
left=0}, unsigned int & 0) line 155 + 39 bytes
nsBaseIBFrame::ReflowBlockFrame(nsBlockReflowState & {...}, nsLineBox *
0x00fb07e0, int & 1) line 2126 + 45 bytes
nsBaseIBFrame::ReflowLine(nsBlockReflowState & {...}, nsLineBox * 0x00fb07e0,
int & 1) line 1592 + 20 bytes
nsBaseIBFrame::ReflowDirtyLines(nsBlockReflowState & {...}) line 1328 + 26 bytes
nsBlockFrame::ReflowDirtyLines(nsBlockReflowState & {...}) line 4868
nsBaseIBFrame::Reflow(nsBaseIBFrame * const 0x00fa7d74, nsIPresContext & {...},
nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned int &
1240492) line 803 + 25 bytes
nsBlockFrame::Reflow(nsBlockFrame * const 0x00fa7d74, nsIPresContext & {...},
nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned int &
1240492) line 4501 + 25 bytes
nsBlockReflowContext::ReflowBlock(nsIFrame * 0x00fa7d70, const nsRect & {x=0 y=0
width=10350 height=1073741824}, int 1, nsMargin & {top=0 right=0 bottom=0
left=0}, unsigned int & 1240492) line 155 + 39 bytes
nsBaseIBFrame::ReflowBlockFrame(nsBlockReflowState & {...}, nsLineBox *
0x00fa7cb0, int & 1) line 2126 + 45 bytes
nsBaseIBFrame::ReflowLine(nsBlockReflowState & {...}, nsLineBox * 0x00fa7cb0,
int & 1) line 1592 + 20 bytes
nsBaseIBFrame::ReflowDirtyLines(nsBlockReflowState & {...}) line 1328 + 26 bytes
nsBlockFrame::ReflowDirtyLines(nsBlockReflowState & {...}) line 4868
nsBaseIBFrame::Reflow(nsBaseIBFrame * const 0x00fa62a4, nsIPresContext & {...},
nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned int & 0)
line 803 + 25 bytes
nsBlockFrame::Reflow(nsBlockFrame * const 0x00fa62a4, nsIPresContext & {...},
nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned int & 0)
line 4501 + 25 bytes
nsAreaFrame::Reflow(nsAreaFrame * const 0x00fa62a4, nsIPresContext & {...},
nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned int & 0)
line 436 + 25 bytes
nsContainerFrame::ReflowChild(nsIFrame * 0x00fa62a0, nsIPresContext & {...},
nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned int & 0)
line 363 + 28 bytes
nsScrollFrame::Reflow(nsScrollFrame * const 0x00fa6d94, nsIPresContext & {...},
nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned int & 0)
line 344
nsContainerFrame::ReflowChild(nsIFrame * 0x00fa6d90, nsIPresContext & {...},
nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned int & 0)
line 363 + 28 bytes
RootFrame::Reflow(RootFrame * const 0x00f9f1b4, nsIPresContext & {...},
nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, unsigned int & 0)
line 200
nsHTMLReflowCommand::Dispatch(nsHTMLReflowCommand * const 0x00fb4e90,
nsIPresContext & {...}, nsHTMLReflowMetrics & {...}, const nsSize & {width=10590
height=8940}, nsIRenderingContext & {...}) line 165
PresShell::ProcessReflowCommands(PresShell * const 0x00f9b070) line 868
PresShell::ExitReflowLock(PresShell * const 0x00f9b070) line 526
PresShell::ContentAppended(PresShell * const 0x00f9b078, nsIDocument *
0x00f597e0, nsIContent * 0x00f9f27c, int 0) line 1021
nsDocument::ContentAppended(nsDocument * const 0x00f597e0, nsIContent *
0x00f9f27c, int 0) line 921
nsHTMLDocument::ContentAppended(nsHTMLDocument * const 0x00f597e0, nsIContent *
0x00f9f27c, int 0) line 537
HTMLContentSink::WillInterrupt(HTMLContentSink * const 0x00f5f590) line 1469
CNavDTD::WillInterruptParse(CNavDTD * const 0x00f9cd80) line 2529 + 18 bytes
nsParser::ResumeParse(nsIDTD * 0x00000000) line 682
nsParser::OnDataAvailable(nsParser * const 0x00f5f6a4, nsIURL * 0x00f21030,
nsIInputStream * 0x00f20700, unsigned int 385) line 868 + 17 bytes
nsDocumentBindInfo::OnDataAvailable(nsDocumentBindInfo * const 0x00f20340,
nsIURL * 0x00f21030, nsIInputStream * 0x00f20700, unsigned int 385) line 1705 +
24 bytes
OnDataAvailableProxyEvent::HandleEvent(OnDataAvailableProxyEvent * const
0x00f22110) line 625
StreamListenerProxyEvent::HandlePLEvent(PLEvent * 0x00f22114) line 464 + 12
bytes
PL_HandleEvent(PLEvent * 0x00f22114) line 395 + 10 bytes
PL_ProcessPendingEvents(PLEventQueue * 0x00ecffa0) line 357 + 9 bytes
_md_EventReceiverProc(HWND__ * 0x001406a8, unsigned int 49303, unsigned int 0,
long 15531936) line 675 + 9 bytes
USER32! 77e71250()
00ecffa0()
Status: NEW → ASSIGNED
It doesn't crash, but the <select> in the <label> is not showing up, so I'll
leave it open.
Setting all current Open Critical and Major to M3
per leger, assigning QA contacts to all open bugs without QA contacts according
to list at http://bugzilla.mozilla.org/describecomponents.cgi?product=Browser
Assignee: karnaze → kmcclusk
Severity: critical → normal
Status: ASSIGNED → NEW
Priority: P2 → P3
Target Milestone: M3 → M4
The select is now showing up (Win32 3/12 debug build). I'm leaving this bug open
and reassigning it to Kevin because selecting the label does not cause anything
to happen with focus. I'm also downgrading the severity and priority and moving
it to M4 because the major problems have been solved.
Status: NEW → ASSIGNED
cc: to cpratt as this bug involves tables and forms.
Target Milestone: M4 → M5
Target Milestone: M5 → M6
Summary: form having tables inside tables which contain form elements cause crash → problems with form having tables inside tables which contain form elements
Target Milestone: M6 → M7
Target Milestone: M7 → M9
jty does not work for Citec anymore so his email might become
invalid. I added myself to Cc so that there is someone tracking this bug
at Citec as well. I copied his sample HTML file to another location and
updated the URL.
Target Milestone: M9 → M10
Moving to M11
QA Contact: chrisd → petersen
Assignee: kmcclusk → rods
Status: ASSIGNED → NEW
Rod - reassigning to you. Please verify the test url against the gfx-rendered
combo box.
Status: NEW → ASSIGNED
My part of this is fixed, the drop down of the combobox display correctly. Now
the table cell grows with each dropdown click and has been assigned bug #11479
Status: ASSIGNED → RESOLVED
Closed: 25 years ago
Resolution: --- → FIXED
Forgot to mark it fixed
Status: RESOLVED → VERIFIED
With the August 11 build, the label element is now showing correctly. Marking as
verified fixed.
You need to log in before you can comment on or make changes to this bug.