<html>
<head>
<base href="https://bugs.webkit.org/" />
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW - Calling then on promise in Workers may crash in Debug builds"
href="https://bugs.webkit.org/show_bug.cgi?id=156737#c4">Comment # 4</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW - Calling then on promise in Workers may crash in Debug builds"
href="https://bugs.webkit.org/show_bug.cgi?id=156737">bug 156737</a>
from <span class="vcard"><a class="email" href="mailto:youennf@gmail.com" title="youenn fablet <youennf@gmail.com>"> <span class="fn">youenn fablet</span></a>
</span></b>
<pre>I am not able to reproduce this error anymore.
Related to promises and Workers, I am sometimes hitting the following assertion:
6 ASSERTION FAILED: promise.inherits(JSPromise::info())
7 /Users/youenn/Apple/Safari/OpenSource/Source/JavaScriptCore/runtime/JSPromiseDeferred.cpp(63) : static JSC::JSPromiseDeferred *JSC::JSPromiseDeferred::create(JSC::ExecState *, JSC::JSGlobalObject *)
8 1 0x109dd01ad WTFCrash
9 2 0x10992b97e JSC::JSPromiseDeferred::create(JSC::ExecState*, JSC::JSGlobalObject*)
10 3 0x10d19bf95 WebCore::callPromiseFunction(JSC::ExecState&, long long (*)(JSC::ExecState*, JSC::JSPromiseDeferred*))
11 4 0x10d87f0bc WebCore::jsWorkerGlobalScopePrototypeFunctionFetchRequest(JSC::ExecState*)
12 5 0x5be8827ae8c8
13 6 0x5be8828a28e7
14 7 0x1099f334b llint_entry
15 8 0x5be8828968b3
16 9 0x1099ec2ce vmEntryToJavaScript
17 10 0x1097df7d7 JSC::JITCode::execute(JSC::VM*, JSC::ProtoCallFrame*)
18 11 0x109766d37 JSC::Interpreter::executeCall(JSC::ExecState*, JSC::JSObject*, JSC::CallType, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&)
19 12 0x109022838 JSC::call(JSC::ExecState*, JSC::JSValue, JSC::CallType, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&)
20 13 0x109022a1b JSC::profiledCall(JSC::ExecState*, JSC::ProfilingReason, JSC::JSValue, JSC::CallType, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&)
21 14 0x1098ce40b JSC::JSJobMicrotask::run(JSC::ExecState*)
22 15 0x10d2aba77 WebCore::JSGlobalObjectCallback::call()
23 16 0x10d2ab931 WebCore::JSGlobalObjectTask::JSGlobalObjectTask(WebCore::JSDOMGlobalObject*, WTF::Ref<JSC::Microtask>&&)::$_0::operator()(WebCore::ScriptExecutionContext&) const
24 17 0x10d2ab7d4 WTF::Function<void (WebCore::ScriptExecutionContext&)>::CallableWrapper<WebCore::JSGlobalObjectTask::JSGlobalObjectTask(WebCore::JSDOMGlobalObject*, WTF::Ref<JSC::Microtask>&&)::$_0>::call(WebCore::ScriptExecutionContext&)
25 18 0x10c87b551 WTF::Function<void (WebCore::ScriptExecutionContext&)>::operator()(WebCore::ScriptExecutionContext&) const
26 19 0x10c8669fd WebCore::ScriptExecutionContext::Task::performTask(WebCore::ScriptExecutionContext&)
27 20 0x10e7e0619 WebCore::WorkerRunLoop::Task::performTask(WebCore::WorkerRunLoop const&, WebCore::WorkerGlobalScope*)
28 21 0x10e7df78b WebCore::WorkerRunLoop::runInMode(WebCore::WorkerGlobalScope*, WebCore::ModePredicate const&, WebCore::WorkerRunLoop::WaitMode)
29 22 0x10e7df2f6 WebCore::WorkerRunLoop::run(WebCore::WorkerGlobalScope*)
30 23 0x10e7e7930 WebCore::WorkerThread::runEventLoop()
31 24 0x10c7d82a8 WebCore::DedicatedWorkerThread::runEventLoop()
32 25 0x10e7e774d WebCore::WorkerThread::workerThread()
33 26 0x10e7e72f5 WebCore::WorkerThread::workerThreadStart(void*)
34 27 0x109e397e9 WTF::createThread(void (*)(void*), void*, char const*)::$_0::operator()() const
35 28 0x109e397bd void std::__1::__invoke_void_return_wrapper<void>::__call<WTF::createThread(void (*)(void*), void*, char const*)::$_0&>(WTF::createThread(void (*)(void*), void*, char const*)::$_0&&&)
36 29 0x109e39769 std::__1::__function::__func<WTF::createThread(void (*)(void*), void*, char const*)::$_0, std::__1::allocator<WTF::createThread(void (*)(void*), void*, char const*)::$_0>, void ()>::operator()()
37 30 0x109448faa std::__1::function<void ()>::operator()() const
38 31 0x109e38407 WTF::threadEntryPoint(void*)
39 LEAK: 1 WebProcessPool
40 LEAK: 1 WebPageProxy</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>