Closed Bug 258118 Opened 20 years ago Closed 20 years ago

The layout of sfgate.com regressed around August 26th

Categories

(Core :: Layout: Block and Inline, defect)

x86
Linux
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: stephen.moehle, Assigned: roc)

References

()

Details

(Keywords: regression, testcase)

Attachments

(4 files, 2 obsolete files)

User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8a3) Gecko/20040904 Build Identifier: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8a3) Gecko/20040904 The layout of sfgate.com is no longer correct. Near the bottom of the page, there is a gif with the work "MARKETPLACE." Under that should be a table consisting of the text "Chronicle Classifieds", "OnSale", "Chronicle Mobile", "Custom Prints", etc. In current trunk Mozilla builds, the table is rendered to the right of where it should be, and if there is text in this right-hand column, it will be overwritten by the table. In Linux trunk build 2004-08-25-05, the layout is OK. In Linux trunk build 2004-08-26-05, the layout is broken. The first time you ever load the page, or immediately after clearing the cache, the page will layout OK, but after reloading or revisiting the page, the layout will be broken as described. Reproducible: Always Steps to Reproduce:
There're several bugs that were checked in then that could in theory affect this: Bug 256938 (not too likely), bug 256932, bug 256937 (not too likely), bug 133165, bug 252920, and bug 252771 A minimal testcase would go a long way towards narrowing down which of these is responsible....
Keywords: qawanted, regression
Attached file Testcase (obsolete) —
Backing out bug 252920 solves this.
Status: UNCONFIRMED → NEW
Component: Layout → Layout: Block and Inline
Ever confirmed: true
Keywords: qawantedtestcase
QA Contact: core.layout → core.layout.block-and-inline
Assignee: nobody → roc
To be precise, this fixes it: // Keep mY up to date in case we're propagating reflow damage // and also because our final height may depend on it. Only // update mY if the line is not empty, because that's what // PlaceLine does. - if (!line->IsEmpty()) { + if (PR_TRUE) { aState.mY = line->mBounds.YMost(); } needToRecoverState = PR_TRUE; }
Might this be similar to the "Find a Home or Apartment" regression on http://channels.netscape.com/ns/homerealestate/default.jsp.
*** Bug 258157 has been marked as a duplicate of this bug. ***
Attached file simpler testcase (obsolete) —
The inner table is not needed.
Attachment #157968 - Attachment is obsolete: true
Attached file oops
the real testcase, sorry
Attachment #158038 - Attachment is obsolete: true
Attached patch fixSplinter Review
nsBlockFrame::ReflowDirtyLines applies float clearing before the current line if the previous line was not reflowed and has a float-clearing break type. Now, if it so happens that we have a line L with a float-clearing break type, followed by L2 which is empty, followed by L3, and we do a reflow in which only L3 is dirty, we don't do any float clearing. This used to be covered up because we'd update aState.mY with L2's YMost which would include the clearing height. Now that we're not taking into account the YMost of empty lines in ReflowDirtyLines, we need to ensure that the float clearing required by line L is applied before we reflow L3. So this patch ensures that the break type is propagated from any line requesting it to the next line to be reflowed. It also cleans up the break type identification a little bit. I'm suspicious about the correctness of CombineBreakType in the cases (NONE, LEFT) and (NONE, RIGHT)...
Comment on attachment 158275 [details] [diff] [review] fix regression fix
Attachment #158275 - Flags: superreview?(dbaron)
Attachment #158275 - Flags: review?(dbaron)
Attached patch revisedSplinter Review
I suppose we should clear floatBreakType when we set mY in the !line->IsEmpty() non-reflow case, since that will include any necessary clearing.
Attachment #158275 - Attachment is obsolete: true
Attachment #158275 - Flags: superreview?(dbaron)
Attachment #158275 - Flags: review?(dbaron)
Attachment #158277 - Flags: superreview?(dbaron)
Attachment #158277 - Flags: review?(dbaron)
Comment on attachment 158277 [details] [diff] [review] revised rubber-stamp r+sr
Attachment #158277 - Flags: superreview?(dbaron)
Attachment #158277 - Flags: superreview+
Attachment #158277 - Flags: review?(dbaron)
Attachment #158277 - Flags: review+
checked in
Status: NEW → RESOLVED
Closed: 20 years ago
Resolution: --- → FIXED
I'll confirm that sfgate.com is fixed.
*** Bug 259046 has been marked as a duplicate of this bug. ***
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: