Bug 251015
Summary: | [ResizeObserver] ASSERT(m_callback->hasCallback()) under ResizeObserver::deliverObservations | ||
---|---|---|---|
Product: | WebKit | Reporter: | cathiechen <cathiechen> |
Component: | DOM | Assignee: | cathiechen <cathiechen> |
Status: | RESOLVED FIXED | ||
Severity: | Normal | CC: | daxpedda, simon.fraser, webkit-bug-importer |
Priority: | P2 | Keywords: | InRadar |
Version: | WebKit Nightly Build | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
See Also: | https://bugs.webkit.org/show_bug.cgi?id=231235 | ||
Bug Depends on: | |||
Bug Blocks: | 250836 |
cathiechen
There is a ASSERTION FAILED if we set the initial last reported size of ResizeObservation to -1 x -1, which is updated in the speciation, see https://github.com/WebKit/WebKit/pull/8839
If the initial size is 0x0, even ResizeObserver observe a disconnected target, it won't trigger ResizeObserver::deliverObservations.
If the initial size is -1x-1, observing a disconnected target would trigger ResizeObserver::deliverObservations, then there we meet a ASSERTION FAILED.
ResizeObserver needs a fix similar to https://bugs.webkit.org/show_bug.cgi?id=231235
stderr:
ASSERTION FAILED: m_callback->hasCallback()
page/ResizeObserver.cpp(145) : void WebCore::ResizeObserver::deliverObservations()
1 0x13a15a5e4 WTFCrash
2 0x2808333e0 WTFCrashWithInfo(int, char const*, char const*, int)
3 0x284c63440 WebCore::ResizeObserver::deliverObservations()
4 0x283aa9074 WebCore::Document::deliverResizeObservations()
5 0x283aa937c WebCore::Document::updateResizeObservations(WebCore::Page&)
6 0x284bd6850 WebCore::Page::updateRendering()::$_29::operator()(WebCore::Document&) const
7 0x284bd67cc WTF::Detail::CallableWrapper<WebCore::Page::updateRendering()::$_29, void, WebCore::Document&>::call(WebCore::Document&)
8 0x283cc64b0 WTF::Function<void (WebCore::Document&)>::operator()(WebCore::Document&) const
9 0x284b90688 WebCore::Page::forEachDocumentFromMainFrame(WebCore::Frame const&, WTF::Function<void (WebCore::Document&)> const&)
10 0x284b80840 WebCore::Page::forEachDocument(WTF::Function<void (WebCore::Document&)> const&) const
11 0x284b88468 WebCore::Page::updateRendering()::$_20::operator()(WebCore::RenderingUpdateStep, WTF::Function<void (WebCore::Document&)> const&) const
12 0x284b88134 WebCore::Page::updateRendering()
13 0x11d05eb10 WebKit::WebPage::updateRendering()
14 0x11c1d7b94 WebKit::TiledCoreAnimationDrawingArea::updateRendering(WebKit::TiledCoreAnimationDrawingArea::UpdateRenderingType)
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
cathiechen
Pull request: https://github.com/WebKit/WebKit/pull/9112
Radar WebKit Bug Importer
<rdar://problem/104822969>
EWS
Committed 259673@main (2861d8c4e29c): <https://commits.webkit.org/259673@main>
Reviewed commits have been landed. Closing PR #9112 and removing active labels.
cathiechen
*** Bug 250836 has been marked as a duplicate of this bug. ***