Closed
Bug 66792
Opened 24 years ago
Closed 24 years ago
Freeze while loading page
Categories
(Core :: Layout, defect)
Core
Layout
Tracking
()
mozilla0.9.2
People
(Reporter: andre, Assigned: waterson)
References
()
Details
(Keywords: hang, perf)
Attachments
(2 files)
b: 2001-01-26-04
os: w2k
reproduceable
after having loaded ca. 50% and page displays, mozilla begins to hang using
100% cpu and does not respond until manually killed
Comment 1•24 years ago
|
||
I can confirm this bug with w2k build 2001012304
Status: UNCONFIRMED → NEW
Ever confirmed: true
Summary: this page sends mozilla to hell → Freeze while loading page
Comment 3•24 years ago
|
||
changing servity from blocker to critical.
and adding keyword
Keywords: hang
Updated•24 years ago
|
Severity: blocker → critical
Comment 4•24 years ago
|
||
Confirmed. I've been seeing intermitten hangs for the last 2 or 3 days
(starting 20010123, I think), but this is the first URL that consistently causes
the problem.
Comment 5•24 years ago
|
||
I've created a smaller testcase at:
http://homepages.tig.com.au/~mcgarry/moz/66792/66792.l.html
Note that the page does not freeze mozilla indefinately, only for a while (which
is why the testcase isn't smaller, as the freeze becomes less noticable on my PC).
The pauses seem to occur when the images start coming in (the images have no
width attribute set in html).
With the images removed, there is no noticable lag:
http://homepages.tig.com.au/~mcgarry/moz/66792/66792.l.noimages.html
Also with images, and no outer-lying table, there is no noticable lag either:
http://homepages.tig.com.au/~mcgarry/moz/66792/66792.l.notable.html
I hope this helps :)
Comment 6•24 years ago
|
||
Comment 7•24 years ago
|
||
over to Layout
Assignee: asa → karnaze
Component: Browser-General → Layout
QA Contact: doronr → petersen
| Assignee | ||
Comment 9•24 years ago
|
||
I'll take a look. I have some related list number bugs.
Assignee: karnaze → waterson
Target Milestone: --- → mozilla0.9
| Assignee | ||
Comment 10•24 years ago
|
||
| Assignee | ||
Comment 11•24 years ago
|
||
So there are a couple problems here. This web page is basically a big, one-cell
table. Inside are about 32 images, most of which have no width/height
information. The page initially loads pretty quickly, but then goes off into
space once the image width & height information arrives and those frames get
reflowed. There are also nested <font> tags which exacerbate the problem.
karnaze: could you give this page a quick try with your new table reflow magic?
I'm wondering if that will make things better...
Comment 12•24 years ago
|
||
*** Bug 69950 has been marked as a duplicate of this bug. ***
Comment 13•24 years ago
|
||
I tried the new table reflow changes and it still appears to hang on attachment
#2 [review] (I gave up after about 2 minutes). The problem may be an infinite loop in the
block code. In the debugger, every time I broke, I saw the following stack, and
it was always the same table cell frame!
nsBlockFrame::RenumberListsFor(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e07a7c, int * 0x00129ac0, int 24) line 7094 + 33 bytes
nsBlockFrame::RenumberListsIn(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e07994, int * 0x00129ac0, int 24) line 7066 + 24 bytes
nsBlockFrame::RenumberListsFor(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e07994, int * 0x00129ac0, int 23) line 7157 + 27 bytes
nsBlockFrame::RenumberListsIn(nsIPresContext * 0x0309bee0, nsIFrame *
0x00de9d48, int * 0x00129ac0, int 23) line 7066 + 24 bytes
nsBlockFrame::RenumberListsFor(nsIPresContext * 0x0309bee0, nsIFrame *
0x00de9850, int * 0x00129ac0, int 22) line 7157 + 27 bytes
nsBlockFrame::RenumberListsIn(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e2b048, int * 0x00129ac0, int 22) line 7066 + 24 bytes
nsBlockFrame::RenumberListsFor(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e2b048, int * 0x00129ac0, int 21) line 7157 + 27 bytes
nsBlockFrame::RenumberListsIn(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e2b080, int * 0x00129ac0, int 21) line 7066 + 24 bytes
nsBlockFrame::RenumberListsFor(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e2b080, int * 0x00129ac0, int 20) line 7157 + 27 bytes
nsBlockFrame::RenumberListsIn(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e2b0b8, int * 0x00129ac0, int 20) line 7066 + 24 bytes
nsBlockFrame::RenumberListsFor(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e2a658, int * 0x00129ac0, int 19) line 7157 + 27 bytes
nsBlockFrame::RenumberListsIn(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e2a690, int * 0x00129ac0, int 19) line 7066 + 24 bytes
nsBlockFrame::RenumberListsFor(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e2a690, int * 0x00129ac0, int 18) line 7157 + 27 bytes
nsBlockFrame::RenumberListsIn(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e2a6c8, int * 0x00129ac0, int 18) line 7066 + 24 bytes
nsBlockFrame::RenumberListsFor(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e2a6c8, int * 0x00129ac0, int 17) line 7157 + 27 bytes
nsBlockFrame::RenumberListsIn(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e2a700, int * 0x00129ac0, int 17) line 7066 + 24 bytes
nsBlockFrame::RenumberListsFor(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e2a700, int * 0x00129ac0, int 16) line 7157 + 27 bytes
nsBlockFrame::RenumberListsIn(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e2a738, int * 0x00129ac0, int 16) line 7066 + 24 bytes
nsBlockFrame::RenumberListsFor(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e2a738, int * 0x00129ac0, int 15) line 7157 + 27 bytes
nsBlockFrame::RenumberListsIn(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e2a770, int * 0x00129ac0, int 15) line 7066 + 24 bytes
nsBlockFrame::RenumberListsFor(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e2a770, int * 0x00129ac0, int 14) line 7157 + 27 bytes
nsBlockFrame::RenumberListsIn(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e2a7a8, int * 0x00129ac0, int 14) line 7066 + 24 bytes
nsBlockFrame::RenumberListsFor(nsIPresContext * 0x0309bee0, nsIFrame *
0x00de9f40, int * 0x00129ac0, int 13) line 7157 + 27 bytes
nsBlockFrame::RenumberListsIn(nsIPresContext * 0x0309bee0, nsIFrame *
0x00de9f78, int * 0x00129ac0, int 13) line 7066 + 24 bytes
nsBlockFrame::RenumberListsFor(nsIPresContext * 0x0309bee0, nsIFrame *
0x00de9f78, int * 0x00129ac0, int 12) line 7157 + 27 bytes
nsBlockFrame::RenumberListsIn(nsIPresContext * 0x0309bee0, nsIFrame *
0x00de9fb0, int * 0x00129ac0, int 12) line 7066 + 24 bytes
nsBlockFrame::RenumberListsFor(nsIPresContext * 0x0309bee0, nsIFrame *
0x00de9fb0, int * 0x00129ac0, int 11) line 7157 + 27 bytes
nsBlockFrame::RenumberListsIn(nsIPresContext * 0x0309bee0, nsIFrame *
0x00de9fe8, int * 0x00129ac0, int 11) line 7066 + 24 bytes
nsBlockFrame::RenumberListsFor(nsIPresContext * 0x0309bee0, nsIFrame *
0x00de9fe8, int * 0x00129ac0, int 10) line 7157 + 27 bytes
nsBlockFrame::RenumberListsIn(nsIPresContext * 0x0309bee0, nsIFrame *
0x00dea020, int * 0x00129ac0, int 10) line 7066 + 24 bytes
nsBlockFrame::RenumberListsFor(nsIPresContext * 0x0309bee0, nsIFrame *
0x00dea020, int * 0x00129ac0, int 9) line 7157 + 27 bytes
nsBlockFrame::RenumberListsIn(nsIPresContext * 0x0309bee0, nsIFrame *
0x00dea058, int * 0x00129ac0, int 9) line 7066 + 24 bytes
nsBlockFrame::RenumberListsFor(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e05a34, int * 0x00129ac0, int 8) line 7157 + 27 bytes
nsBlockFrame::RenumberListsIn(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e059fc, int * 0x00129ac0, int 8) line 7066 + 24 bytes
nsBlockFrame::RenumberListsFor(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e059fc, int * 0x00129ac0, int 7) line 7157 + 27 bytes
nsBlockFrame::RenumberListsIn(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e059c4, int * 0x00129ac0, int 7) line 7066 + 24 bytes
nsBlockFrame::RenumberListsFor(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e059c4, int * 0x00129ac0, int 6) line 7157 + 27 bytes
nsBlockFrame::RenumberListsIn(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e0598c, int * 0x00129ac0, int 6) line 7066 + 24 bytes
nsBlockFrame::RenumberListsFor(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e0598c, int * 0x00129ac0, int 5) line 7157 + 27 bytes
nsBlockFrame::RenumberListsIn(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e05954, int * 0x00129ac0, int 5) line 7066 + 24 bytes
nsBlockFrame::RenumberListsFor(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e05954, int * 0x00129ac0, int 4) line 7157 + 27 bytes
nsBlockFrame::RenumberListsIn(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e0591c, int * 0x00129ac0, int 4) line 7066 + 24 bytes
nsBlockFrame::RenumberListsFor(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e0591c, int * 0x00129ac0, int 3) line 7157 + 27 bytes
nsBlockFrame::RenumberListsIn(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e058e4, int * 0x00129ac0, int 3) line 7066 + 24 bytes
nsBlockFrame::RenumberListsFor(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e058e4, int * 0x00129ac0, int 2) line 7157 + 27 bytes
nsBlockFrame::RenumberListsIn(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e058ac, int * 0x00129ac0, int 2) line 7066 + 24 bytes
nsBlockFrame::RenumberListsFor(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e058ac, int * 0x00129ac0, int 1) line 7157 + 27 bytes
nsBlockFrame::RenumberListsInBlock(nsIPresContext * 0x0309bee0, nsBlockFrame *
0x00e05860, int * 0x00129ac0, int 1) line 7033 + 24 bytes
nsBlockFrame::RenumberListsFor(nsIPresContext * 0x0309bee0, nsIFrame *
0x00e05860, int * 0x00129ac0, int 0) line 7124 + 27 bytes
nsBlockFrame::RenumberListsInBlock(nsIPresContext * 0x0309bee0, nsBlockFrame *
0x00e05814, int * 0x00129ac0, int 0) line 7033 + 24 bytes
nsBlockFrame::RenumberLists(nsIPresContext * 0x0309bee0) line 7016
nsBlockFrame::Reflow(nsBlockFrame * const 0x00e05814, nsIPresContext *
0x0309bee0, nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...},
unsigned int & 0) line 1622
nsBlockReflowContext::DoReflowBlock(nsHTMLReflowState & {...}, nsReflowReason
eReflowReason_Incremental, nsIFrame * 0x00e05814, const nsRect & {x=0 y=40093
width=8250 height=1073741824}, int 1, int 240, int 0, nsMargin & {top=0 right=0
bottom=0 left=0}, unsigned int & 0) line 568 + 36 bytes
nsBlockReflowContext::ReflowBlock(nsIFrame * 0x00e05814, const nsRect & {x=0
y=40093 width=8250 height=1073741824}, int 1, int 240, int 0, nsMargin & {top=0
right=0 bottom=0 left=0}, unsigned int & 0) line 336 + 50 bytes
nsBlockFrame::ReflowBlockFrame(nsBlockReflowState & {...}, nsLineBox *
0x00e15cf0, int * 0x0012a620) line 3901 + 56 bytes
nsBlockFrame::ReflowLine(nsBlockReflowState & {...}, nsLineBox * 0x00e15cf0, int
* 0x0012a620, int 1) line 3164 + 23 bytes
nsBlockFrame::ReflowDirtyLines(nsBlockReflowState & {...}) line 2971 + 27 bytes
nsBlockFrame::Reflow(nsBlockFrame * const 0x00dd71f8, nsIPresContext *
0x0309bee0, nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...},
unsigned int & 0) line 1743 + 15 bytes
nsContainerFrame::ReflowChild(nsIFrame * 0x00dd71f8, nsIPresContext *
0x0309bee0, nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...}, int
15, int 15, unsigned int 0, unsigned int & 0) line 695 + 31 bytes
nsTableCellFrame::Reflow(nsTableCellFrame * const 0x00dd719c, nsIPresContext *
0x0309bee0, nsHTMLReflowMetrics & {...}, const nsHTMLReflowState & {...},
unsigned int & 0) line 686
| Assignee | ||
Comment 14•24 years ago
|
||
End-of-milestone reality check.
Target Milestone: mozilla0.9 → mozilla0.9.1
| Assignee | ||
Updated•24 years ago
|
Target Milestone: mozilla0.9.1 → mozilla0.9.2
| Assignee | ||
Comment 17•24 years ago
|
||
This is a dup of bug 42138, and is fixed by the patch there.
*** This bug has been marked as a duplicate of 42138 ***
Status: ASSIGNED → RESOLVED
Closed: 24 years ago
Resolution: --- → DUPLICATE
You need to log in
before you can comment on or make changes to this bug.
Description
•