Bug 217345 - REGRESSION(r267915): Many layout tests are asserting under ~CompletionHandler()
Summary: REGRESSION(r267915): Many layout tests are asserting under ~CompletionHandler()
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Wenson Hsieh
URL:
Keywords: InRadar
: 217348 (view as bug list)
Depends on:
Blocks:
 
Reported: 2020-10-05 15:27 PDT by Hector Lopez
Modified: 2020-10-05 18:27 PDT (History)
6 users (show)

See Also:


Attachments
Patch (2.03 KB, patch)
2020-10-05 16:07 PDT, Wenson Hsieh
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Hector Lopez 2020-10-05 15:27:53 PDT
There are about 30+ test crashing after r267915 on iOS Debug with the same ASSERTION FAILURE: WTF::CompletionHandler<void ()>::~CompletionHandler(): Completion handler should always be called !m_function

iOS Debug Testers:

https://build.webkit.org/builders/Apple-iOS-14-Simulator-Debug-WK2-Tests?numbuilds=50

iPad Debug Testers:

https://build.webkit.org/builders/Apple-iPadOS-14-Simulator-Debug-WK2-Tests?numbuilds=50

Sample log:

No crash log found for com.apple.WebKit.WebContent.Development:36682.

stdout:

stderr:
ASSERTION FAILED: Completion handler should always be called
!m_function
/Volumes/Data/slave/ios-simulator-14-debug/build/WebKitBuild/Debug-iphonesimulator/usr/local/include/wtf/CompletionHandler.h(53) : WTF::CompletionHandler<void ()>::~CompletionHandler()
1   0x6376706e9 WTFCrash
2   0x63f2a7817 WTF::CompletionHandler<void ()>::~CompletionHandler()
3   0x63f2a77b5 WTF::CompletionHandler<void ()>::~CompletionHandler()
4   0x642b90a8f WebCore::DragController::finalizeDroppedImagePlaceholder(WebCore::HTMLImageElement&, WTF::CompletionHandler<void ()>&&)::$_1::~$_1()
5   0x642b731e5 WebCore::DragController::finalizeDroppedImagePlaceholder(WebCore::HTMLImageElement&, WTF::CompletionHandler<void ()>&&)::$_1::~$_1()
6   0x642ba0c35 WTF::Detail::CallableWrapper<WebCore::DragController::finalizeDroppedImagePlaceholder(WebCore::HTMLImageElement&, WTF::CompletionHandler<void ()>&&)::$_1, void>::~CallableWrapper()
7   0x642ba0b45 WTF::Detail::CallableWrapper<WebCore::DragController::finalizeDroppedImagePlaceholder(WebCore::HTMLImageElement&, WTF::CompletionHandler<void ()>&&)::$_1, void>::~CallableWrapper()
8   0x642ba0b6c WTF::Detail::CallableWrapper<WebCore::DragController::finalizeDroppedImagePlaceholder(WebCore::HTMLImageElement&, WTF::CompletionHandler<void ()>&&)::$_1, void>::~CallableWrapper()
9   0x63f23d43f std::__1::default_delete<WTF::Detail::CallableWrapperBase<void> >::operator()(WTF::Detail::CallableWrapperBase<void>*) const
10  0x63f23d3ff std::__1::unique_ptr<WTF::Detail::CallableWrapperBase<void>, std::__1::default_delete<WTF::Detail::CallableWrapperBase<void> > >::reset(WTF::Detail::CallableWrapperBase<void>*)
11  0x63f23d399 std::__1::unique_ptr<WTF::Detail::CallableWrapperBase<void>, std::__1::default_delete<WTF::Detail::CallableWrapperBase<void> > >::~unique_ptr()
12  0x63f23d375 std::__1::unique_ptr<WTF::Detail::CallableWrapperBase<void>, std::__1::default_delete<WTF::Detail::CallableWrapperBase<void> > >::~unique_ptr()
13  0x63f23d355 WTF::Function<void ()>::~Function()
14  0x63f23d335 WTF::Function<void ()>::~Function()
15  0x641da4135 WebCore::EventLoopFunctionDispatchTask::~EventLoopFunctionDispatchTask()
16  0x641da3665 WebCore::EventLoopFunctionDispatchTask::~EventLoopFunctionDispatchTask()
17  0x641da368c WebCore::EventLoopFunctionDispatchTask::~EventLoopFunctionDispatchTask()
18  0x641daf50f std::__1::default_delete<WebCore::EventLoopTask>::operator()(WebCore::EventLoopTask*) const
19  0x641daf4cf std::__1::unique_ptr<WebCore::EventLoopTask, std::__1::default_delete<WebCore::EventLoopTask> >::reset(WebCore::EventLoopTask*)
20  0x641daf469 std::__1::unique_ptr<WebCore::EventLoopTask, std::__1::default_delete<WebCore::EventLoopTask> >::~unique_ptr()
21  0x641da0495 std::__1::unique_ptr<WebCore::EventLoopTask, std::__1::default_delete<WebCore::EventLoopTask> >::~unique_ptr()
22  0x641d9fbea unsigned int WTF::Vector<std::__1::unique_ptr<WebCore::EventLoopTask, std::__1::default_delete<WebCore::EventLoopTask> >, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>::removeAllMatching<WebCore::EventLoop::stopGroup(WebCore::EventLoopTaskGroup&)::$_0>(WebCore::EventLoop::stopGroup(WebCore::EventLoopTaskGroup&)::$_0 const&, unsigned long)
23  0x641d9facb WebCore::EventLoop::stopGroup(WebCore::EventLoopTaskGroup&)
24  0x641c802a6 WebCore::EventLoopTaskGroup::stopAndDiscardAllTasks()
25  0x641c7266d WebCore::Document::stopActiveDOMObjects()
26  0x641c7243c WebCore::Document::commonTeardown()
27  0x641c7ebe3 WebCore::Document::willBeRemovedFromFrame()
28  0x642bad733 WebCore::Frame::setView(WTF::RefPtr<WebCore::FrameView, WTF::DumbPtrTraits<WebCore::FrameView>, WTF::DefaultRefDerefTraits<WebCore::FrameView> >&&)
29  0x642bb271d WebCore::Frame::createView(WebCore::IntSize const&, WTF::Optional<WebCore::Color> const&, WebCore::IntSize const&, WebCore::IntRect const&, bool, WebCore::ScrollbarMode, bool, WebCore::ScrollbarMode, bool)
30  0x110c01157 WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage()
31  0x642986a4e WebCore::FrameLoader::transitionToCommitted(WebCore::CachedPage*)
LEAK: 1 WebPageProxy
Comment 1 Radar WebKit Bug Importer 2020-10-05 15:28:13 PDT
<rdar://problem/69973775>
Comment 2 Wenson Hsieh 2020-10-05 16:01:43 PDT
*** Bug 217348 has been marked as a duplicate of this bug. ***
Comment 3 Wenson Hsieh 2020-10-05 16:07:20 PDT
Created attachment 410578 [details]
Patch
Comment 4 EWS 2020-10-05 18:27:25 PDT
Committed r268025: <https://trac.webkit.org/changeset/268025>

All reviewed patches have been landed. Closing bug and clearing flags on attachment 410578 [details].