[Webkit-unassigned] [Bug 33050] New: [GTK] ASSERTs on fast/inline/inline-body-with-scrollbar-crash.html

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Dec 30 04:44:26 PST 2009


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

           Summary: [GTK] ASSERTs on
                    fast/inline/inline-body-with-scrollbar-crash.html
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: PC
        OS/Version: Mac OS X 10.5
            Status: NEW
          Keywords: Gtk
          Severity: Normal
          Priority: P2
         Component: Layout and Rendering
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: gns at gnome.org
                CC: hyatt at apple.com


I have investigate this to find out that the problem lies on readjusting the
size of the view, here (FrameView.cpp::layout around line 679):

    if (!subtree && !toRenderView(root)->printing())
        adjustViewSize();

This ends up in a call to updateScrollbars, in GTK+, which ends up triggering a
resize of the view (because the parent widget's scroll bars take up space),
which requests a relayout. So the ASSERT ends up being hit:

    ASSERT(!root->needsLayout());

I have investigated a bunch of solutions, such as having our own implementation
of ScrollView::setContentsSize, but I always end up in having to either
reimplement almost all of the updateScrollbars logic, or triggering a relayout
anyway. I feel like the call to updateScrollbars is correct, and that
triggering the resize of the view is an expected outcome - so the assert would
not be correct for GTK+ - but I am not sure enough, so I decided to open this
bug report and request help/advice from layout/scrolling wizards.

-- 
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