[webkit-changes] [WebKit/WebKit] e9a0ef: [WPE] ASSERTION FAILED: m_thread.ptr() == &Thread:...

Vitaly Dyachkov noreply at github.com
Wed Dec 20 10:16:40 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: e9a0efd9166fc74e4d71061713940c18fda1c7e5
      https://github.com/WebKit/WebKit/commit/e9a0efd9166fc74e4d71061713940c18fda1c7e5
  Author: Vitaly Dyachkov <vitaly at igalia.com>
  Date:   2023-12-20 (Wed, 20 Dec 2023)

  Changed paths:
    M LayoutTests/platform/wpe/TestExpectations
    M Source/WebCore/page/WheelEventTestMonitor.cpp
    M Source/WebCore/page/WheelEventTestMonitor.h

  Log Message:
  -----------
  [WPE] ASSERTION FAILED: m_thread.ptr() == &Thread::current()
https://bugs.webkit.org/show_bug.cgi?id=266624

Reviewed by Chris Dumez.

When threaded scrolling is used, we may end up execuring
`WheelEventTestMonitor::scheduleCallbackCheck()` in the scrolling
thread.

Then when trying to create `WeakRef` of the `Page` we hit the assertion
in Debug builds because the `Page` can only make single thread weak ptr.

To solve this, this patch makes `WheelEventTestMonitor` be able to make
thread-safe weak ptr and then accesses the page using its `m_page`
instance variable.

* LayoutTests/platform/wpe/TestExpectations:
* Source/WebCore/page/WheelEventTestMonitor.cpp:
(WebCore::WheelEventTestMonitor::scheduleCallbackCheck):
* Source/WebCore/page/WheelEventTestMonitor.h:

Canonical link: https://commits.webkit.org/272356@main




More information about the webkit-changes mailing list