<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>265537</bug_id>
          
          <creation_ts>2023-11-29 12:27:32 -0800</creation_ts>
          <short_desc>REGRESSION: ASSERTION FAILED: m_repaintRectsValid =&gt; m_repaintRects.clippedOverflowRect == renderer().clippedOverflowRectForRepaint(renderer().containerForRepaint().renderer.get())</short_desc>
          <delta_ts>2023-12-04 14:16:46 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Compositing</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=188122</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Fujii Hironori">fujii</reporter>
          <assigned_to name="Fujii Hironori">fujii</assigned_to>
          <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1995679</commentid>
    <comment_count>0</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2023-11-29 12:27:32 -0800</bug_when>
    <thetext>271260@main: good
271263@main: bad

Buildbot: builder WinCairo-64-bit-Debug-Tests build 21402 : 271263@main
https://build.webkit.org/#/builders/727/builds/21402

Regressions: Unexpected crashes (3)
  compositing/geometry/fixed-position-composited-page-scale-scroll.html [ Crash ]
  fast/visual-viewport/zoomed-scroll-into-view-fixed.html [ Crash ]
  fast/visual-viewport/zoomed-scroll-to-anchor-in-position-fixed.html [ Crash ]


https://build.webkit.org/results/WinCairo-64-bit-Debug-Tests/271263@main%20(21402)/compositing/geometry/fixed-position-composited-page-scale-scroll-stderr.txt

ASSERTION FAILED: m_repaintRectsValid =&gt; m_repaintRects.clippedOverflowRect == renderer().clippedOverflowRectForRepaint(renderer().containerForRepaint().renderer.get())
C:\BW\WinCairo-64-bit-Debug-Build\build\Source\WebCore\rendering/RenderLayer.cpp(1275) : recursiveUpdateLayerPositionsAfterScroll
1   00007FF8F5DF1B99 WTFCrash
2   00007FF8DC981EB0 WebCore::RenderLayer::recursiveUpdateLayerPositionsAfterScroll
3   00007FF8DC9821E3 WebCore::RenderLayer::updateLayerPositionsAfterDocumentScroll
4   00007FF8DC19B645 WebCore::LocalFrameView::updateLayerPositionsAfterScrolling
5   00007FF8DC39AC21 WebCore::ScrollView::completeUpdatesAfterScrollTo
6   00007FF8DC39AF07 WebCore::ScrollView::scrollTo
7   00007FF8DC1A1274 WebCore::LocalFrameView::scrollTo
8   00007FF8DC39A735 WebCore::ScrollView::setScrollOffset
9   00007FF8DC3A1B9E WebCore::ScrollableArea::scrollPositionChanged
10  00007FF8DC3A20E4 WebCore::ScrollableArea::setScrollPositionFromAnimation
11  00007FF8DC38B5F9 WebCore::ScrollAnimator::notifyPositionChanged
12  00007FF8DC38AC45 WebCore::ScrollAnimator::setCurrentPosition
13  00007FF8DC38AB9C WebCore::ScrollAnimator::scrollToPositionWithoutAnimation
14  00007FF8DC3A153B WebCore::ScrollableArea::scrollToPositionWithoutAnimation
15  00007FF8DC39BD66 WebCore::ScrollView::updateScrollbars::&lt;lambda_0&gt;::operator()
16  00007FF8DC398B84 WebCore::ScrollView::updateScrollbars
17  00007FF8DC39B56B WebCore::ScrollView::setScrollPosition
18  00007FF8DC18B214 WebCore::LocalFrameView::setScrollPosition
19  00007FF8DC398F7B WebCore::ScrollView::setContentsScrollPosition
20  00007FF8DC17E6A3 WebCore::LocalDOMWindow::scrollTo
21  00007FF8DC17E777 WebCore::LocalDOMWindow::scrollTo
22  00007FF8D998DC0C WebCore::jsLocalDOMWindowInstanceFunction_scrollTo2Body::&lt;lambda_1&gt;::operator()
23  00007FF8D998DBBF WebCore::toJS&lt;WebCore::IDLUndefined,`lambda at C:\BW\WinCairo-64-bit-Debug-Build\build\WebKitBuild\Debug\WebCore\DerivedSources\JSLocalDOMWindow.cpp:27186:5&apos;&gt;
24  00007FF8D998DA4C WebCore::jsLocalDOMWindowInstanceFunction_scrollTo2Body
25  00007FF8D998D382 WebCore::jsLocalDOMWindowInstanceFunction_scrollToOverloadDispatcher
26  00007FF8D998D110 WebCore::IDLOperation&lt;WebCore::JSLocalDOMWindow&gt;::call&lt;&amp;WebCore::jsLocalDOMWindowInstanceFunction_scrollToOverloadDispatcher,0&gt;
27  00007FF8D997DDA4 WebCore::jsLocalDOMWindowInstanceFunction_scrollTo
28  00000207B11F115E (null)
ERROR: 0000019D0029DED0 - [PID=5684] WebProcessProxy::didClose (web process crash)
C:\BW\WinCairo-64-bit-Debug-Build\build\Source\WebKit\UIProcess/WebProcessProxy.cpp(1098) : didClose
ERROR: 0000019D0029DED0 - [PID=5684] WebProcessProxy::processDidTerminateOrFailedToLaunch: reason=Crash
C:\BW\WinCairo-64-bit-Debug-Build\build\Source\WebKit\UIProcess/WebProcessProxy.cpp(1106) : processDidTerminateOrFailedToLaunch
ERROR: 0000019D001CA240 - [pageProxyID=181, webPageID=182, PID=5684] WebPageProxy::processDidTerminate: (pid 5684), reason=Crash
C:\BW\WinCairo-64-bit-Debug-Build\build\Source\WebKit\UIProcess/WebPageProxy.cpp(9138) : resetStateAfterProcessTermination
ERROR: 0000019D001CA240 - [pageProxyID=181, webPageID=182, PID=5684] WebPageProxy::dispatchProcessDidTerminate: reason=Crash
C:\BW\WinCairo-64-bit-Debug-Build\build\Source\WebKit\UIProcess/WebPageProxy.cpp(9196) : dispatchProcessDidTerminate
WebProcess terminated (pid 5684) for reason: crash</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1996069</commentid>
    <comment_count>1</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2023-11-30 17:03:54 -0800</bug_when>
    <thetext>GTK port is also crashing.

Buildbot: builder GTK-Linux-64-bit-Debug-Tests build 11839 : 271261@main
https://build.webkit.org/#/builders/63/builds/11839

ASSERTION FAILED: m_repaintRectsValid =&gt; m_repaintRects.clippedOverflowRect == renderer().clippedOverflowRectForRepaint(renderer().containerForRepaint().renderer.get())
/app/webkit/Source/WebCore/rendering/RenderLayer.cpp(1275) : void WebCore::RenderLayer::recursiveUpdateLayerPositionsAfterScroll(WebCore::RenderGeometryMap*, WTF::OptionSet&lt;UpdateLayerPositionsAfterScrollFlag&gt;)
1   0x7efeca54f773 WTFCrash
2   0x7efedb362a88 WebCore::RenderLayer::recursiveUpdateLayerPositionsAfterScroll(WebCore::RenderGeometryMap*, WTF::OptionSet&lt;WebCore::RenderLayer::UpdateLayerPositionsAfterScrollFlag&gt;)
3   0x7efedb3625ff WebCore::RenderLayer::updateLayerPositionsAfterDocumentScroll()
4   0x7efeda78fd97 WebCore::LocalFrameView::updateLayerPositionsAfterScrolling()
5   0x7efedaa32feb WebCore::ScrollView::completeUpdatesAfterScrollTo(WebCore::IntSize const&amp;)
6   0x7efedaa32f9f WebCore::ScrollView::scrollTo(WebCore::IntPoint const&amp;)
7   0x7efeda79529e WebCore::LocalFrameView::scrollTo(WebCore::IntPoint const&amp;)
8   0x7efedaa32947 WebCore::ScrollView::setScrollOffset(WebCore::IntPoint const&amp;)
9   0x7efedaa3a6c7 WebCore::ScrollableArea::scrollPositionChanged(WebCore::IntPoint const&amp;)
10  0x7efedaa3ac1b WebCore::ScrollableArea::setScrollPositionFromAnimation(WebCore::IntPoint const&amp;)
11  0x7efedaa25737 WebCore::ScrollAnimator::notifyPositionChanged(WebCore::FloatSize const&amp;)
12  0x7efedaa25682 WebCore::ScrollAnimator::setCurrentPosition(WebCore::FloatPoint const&amp;, WebCore::ScrollAnimator::NotifyScrollableArea)
13  0x7efedaa24d8d WebCore::ScrollAnimator::scrollToPositionWithoutAnimation(WebCore::FloatPoint const&amp;, WebCore::ScrollClamping)
14  0x7efedaa3a065 WebCore::ScrollableArea::scrollToPositionWithoutAnimation(WebCore::FloatPoint const&amp;, WebCore::ScrollClamping)
15  0x7efedaa337fd operator()
16  0x7efedaa34b33 WebCore::ScrollView::updateScrollbars(WebCore::IntPoint const&amp;)
17  0x7efedaa33380 WebCore::ScrollView::setScrollPosition(WebCore::IntPoint const&amp;, WebCore::ScrollPositionChangeOptions const&amp;)
18  0x7efeda78d660 WebCore::LocalFrameView::setScrollPosition(WebCore::IntPoint const&amp;, WebCore::ScrollPositionChangeOptions const&amp;)
19  0x7efedaa315cf WebCore::ScrollView::setContentsScrollPosition(WebCore::IntPoint const&amp;, WebCore::ScrollPositionChangeOptions const&amp;)
20  0x7efeda77660e WebCore::LocalDOMWindow::scrollTo(WebCore::ScrollToOptions const&amp;, WebCore::ScrollClamping, WebCore::ScrollSnapPointSelectionMethod, std::optional&lt;WebCore::FloatSize&gt;) const
21  0x7efeda77617a WebCore::LocalDOMWindow::scrollTo(double, double, WebCore::ScrollClamping) const
22  0x7efed7618a37 operator()
23  0x7efed768600c toJS&lt;WebCore::IDLUndefined, WebCore::jsLocalDOMWindowInstanceFunction_scrollTo2Body(JSC::JSGlobalObject*, JSC::CallFrame*, IDLOperation&lt;JSLocalDOMWindow&gt;::ClassParameter)::&lt;lambda()&gt; &gt;
24  0x7efed7618dab jsLocalDOMWindowInstanceFunction_scrollTo2Body
25  0x7efed7619046 jsLocalDOMWindowInstanceFunction_scrollToOverloadDispatcher
26  0x7efed768629c call&lt;WebCore::jsLocalDOMWindowInstanceFunction_scrollToOverloadDispatcher&gt;
27  0x7efed76190b8 jsLocalDOMWindowInstanceFunction_scrollTo
28  0x7efe74408038 ???
WebKitWebProcess terminated (pid 5332) for reason: crash</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1996635</commentid>
    <comment_count>2</comment_count>
      <attachid>468858</attachid>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2023-12-03 22:03:55 -0800</bug_when>
    <thetext>Created attachment 468858
Patch to enable ForceCompositingMode for WinCairo

Enabling ForceCompositingMode for WinCairo resovles the assertion failure.
This seems to be the reason why Mac WK2 and WPE don&apos;t crash.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1996636</commentid>
    <comment_count>3</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2023-12-03 22:10:35 -0800</bug_when>
    <thetext>Mac WK1 doensn&apos;t crash because it skips the assertions. See bug#188122.
GTK and WinCairo should do the same.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1996641</commentid>
    <comment_count>4</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2023-12-03 22:26:22 -0800</bug_when>
    <thetext>Pull request: https://github.com/WebKit/WebKit/pull/21254</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1996772</commentid>
    <comment_count>5</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2023-12-04 10:25:33 -0800</bug_when>
    <thetext>I am removing this assertion in https://github.com/WebKit/WebKit/pull/21241</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>468858</attachid>
            <date>2023-12-03 22:03:55 -0800</date>
            <delta_ts>2023-12-03 22:03:55 -0800</delta_ts>
            <desc>Patch to enable ForceCompositingMode for WinCairo</desc>
            <filename>wincairo-force-compositing-mode.patch</filename>
            <type>text/plain</type>
            <size>822</size>
            <attacher name="Fujii Hironori">fujii</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL3djL0RyYXdpbmdB
cmVhV0MuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2Uvd2MvRHJhd2luZ0Fy
ZWFXQy5jcHANCmluZGV4IDI3NGJiNTA2YWJmMS4uNGU2YjJlM2Q4M2VhIDEwMDY0NA0KLS0tIGEv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2Uvd2MvRHJhd2luZ0FyZWFXQy5jcHANCisr
KyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL3djL0RyYXdpbmdBcmVhV0MuY3Bw
DQpAQCAtMTE5LDcgKzExOSw3IEBAIHZvaWQgRHJhd2luZ0FyZWFXQzo6dXBkYXRlUHJlZmVyZW5j
ZXMoY29uc3QgV2ViUHJlZmVyZW5jZXNTdG9yZSYgc3RvcmUpDQogew0KICAgICBTZXR0aW5ncyYg
c2V0dGluZ3MgPSBtX3dlYlBhZ2UtPmNvcmVQYWdlKCktPnNldHRpbmdzKCk7DQogICAgIHNldHRp
bmdzLnNldEFjY2VsZXJhdGVkQ29tcG9zaXRpbmdGb3JGaXhlZFBvc2l0aW9uRW5hYmxlZChzZXR0
aW5ncy5hY2NlbGVyYXRlZENvbXBvc2l0aW5nRW5hYmxlZCgpKTsNCi0gICAgc2V0dGluZ3Muc2V0
Rm9yY2VDb21wb3NpdGluZ01vZGUoc3RvcmUuZ2V0Qm9vbFZhbHVlRm9yS2V5KFdlYlByZWZlcmVu
Y2VzS2V5OjpzaXRlSXNvbGF0aW9uRW5hYmxlZEtleSgpKSk7DQorICAgIHNldHRpbmdzLnNldEZv
cmNlQ29tcG9zaXRpbmdNb2RlKHRydWUpOw0KIH0NCiANCiBib29sIERyYXdpbmdBcmVhV0M6OnNo
b3VsZFVzZVRpbGVkQmFja2luZ0ZvckZyYW1lVmlldyhjb25zdCBXZWJDb3JlOjpMb2NhbEZyYW1l
VmlldyYgZnJhbWVWaWV3KSBjb25zdA0K
</data>

          </attachment>
      

    </bug>

</bugzilla>