[Webkit-unassigned] [Bug 96804] New: Make computeLogicalHeight virtual and updateLogicalHeight non-virtual.

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Fri Sep 14 10:17:06 PDT 2012


https://bugs.webkit.org/show_bug.cgi?id=96804

           Summary: Make computeLogicalHeight virtual and
                    updateLogicalHeight non-virtual.
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: Unspecified
        OS/Version: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: Layout and Rendering
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: tony at chromium.org
                CC: hyatt at apple.com


In bug 94982, the code for computeLogicalHeight was made const and put int a non-virtual function.  This got rid of some hacks where we would store the old height, call computeLogicalHeight, then restore the old height.

However, in the new code, it's hard to use computeLogicalHeight because it's not virtual so if you call it on a pointer and your pointer overrides updateLogicalHeight (e.g., it's an iframe), it'll do the wrong thing.  See RenderBlock::computeBlockPreferredLogicalWidths for an example of where we would like to use childBox->computeLogicalHeight(..), but it crashes because sometimes childBox is a RenderView, which overrides updateLogicalHeight().

I think long term, we want to make computeLogicalHeight virtual and move code from the subclass updateLogicalHeight into it and then make updateLogicalHeight non-virtual.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list