Closed
Bug 518665
Opened 15 years ago
Closed 2 years ago
Make nsBlockFrame's overflow store an nsFrameList, not just lines
Categories
(Core :: Layout, defect, P3)
Tracking
()
RESOLVED
DUPLICATE
of bug 728908
People
(Reporter: bzbarsky, Unassigned)
References
(Blocks 1 open bug)
Details
See bug 512471 comment 5.
I guess the idea would be that Set/Get/RemoveOverflowLines would take a pointer to a struct, not to an nsLineList*, and that struct would contain an nsLineList* and an nsFrameList.
Would allocating this struct from the presshell's arena be reasonable? I expect we'd be doing this a fair amount, and we have a prescontext in DestroyOverflowLines and the like already....
Alternatively, you could just construct the nsFrameList on the fly in the places it's needed. We do that in GetChildList.
Sorry, I guess I wasn't cleary: in that case, it doesn't need to be dynamically-allocated.
Reporter | ||
Comment 3•15 years ago
|
||
I thought the whole point here was to get rid of the GetChildList code in question.
I was suggesting to shift that into GetOverflowLines() so that GetOverflowLines()'s caller can request a frame list along with the line list. There's a couple places where we call GetOverflowLines just to check if we have lines, and there's others where we're manipulating the frame list; in the latter case we should have a frame list to manipulate.
But I guess that still doesn't get us const& nsFrameList for GetChildList...
Reporter | ||
Comment 5•15 years ago
|
||
Right. And creating an nsFrameList when we don't need one is not a good idea, since it's an O(N) in number of frames operation now...
Reporter | ||
Updated•14 years ago
|
Priority: -- → P2
Reporter | ||
Updated•14 years ago
|
Priority: P2 → P3
Reporter | ||
Updated•5 years ago
|
Assignee: bzbarsky → nobody
Updated•2 years ago
|
Severity: normal → S3
Comment 6•2 years ago
|
||
We've stored overflow in a FrameLines
struct containing nsFrameList
and nsLineList
. This is done in bug 728908.
Re comment 4:
But I guess that still doesn't get us const& nsFrameList for GetChildList...
This is fixed by bug 728906.
Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → DUPLICATE
You need to log in
before you can comment on or make changes to this bug.
Description
•