<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&#64;gmail.com" title="youenn fablet &lt;youennf&#64;gmail.com&gt;"> <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&amp;, 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&amp;, JSC::JSValue, JSC::ArgList const&amp;)
 19 12  0x109022838 JSC::call(JSC::ExecState*, JSC::JSValue, JSC::CallType, JSC::CallData const&amp;, JSC::JSValue, JSC::ArgList const&amp;)
 20 13  0x109022a1b JSC::profiledCall(JSC::ExecState*, JSC::ProfilingReason, JSC::JSValue, JSC::CallType, JSC::CallData const&amp;, JSC::JSValue, JSC::ArgList const&amp;)
 21 14  0x1098ce40b JSC::JSJobMicrotask::run(JSC::ExecState*)
 22 15  0x10d2aba77 WebCore::JSGlobalObjectCallback::call()
 23 16  0x10d2ab931 WebCore::JSGlobalObjectTask::JSGlobalObjectTask(WebCore::JSDOMGlobalObject*, WTF::Ref&lt;JSC::Microtask&gt;&amp;&amp;)::$_0::operator()(WebCore::ScriptExecutionContext&amp;) const
 24 17  0x10d2ab7d4 WTF::Function&lt;void (WebCore::ScriptExecutionContext&amp;)&gt;::CallableWrapper&lt;WebCore::JSGlobalObjectTask::JSGlobalObjectTask(WebCore::JSDOMGlobalObject*, WTF::Ref&lt;JSC::Microtask&gt;&amp;&amp;)::$_0&gt;::call(WebCore::ScriptExecutionContext&amp;)
 25 18  0x10c87b551 WTF::Function&lt;void (WebCore::ScriptExecutionContext&amp;)&gt;::operator()(WebCore::ScriptExecutionContext&amp;) const
 26 19  0x10c8669fd WebCore::ScriptExecutionContext::Task::performTask(WebCore::ScriptExecutionContext&amp;)
 27 20  0x10e7e0619 WebCore::WorkerRunLoop::Task::performTask(WebCore::WorkerRunLoop const&amp;, WebCore::WorkerGlobalScope*)
 28 21  0x10e7df78b WebCore::WorkerRunLoop::runInMode(WebCore::WorkerGlobalScope*, WebCore::ModePredicate const&amp;, 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&lt;void&gt;::__call&lt;WTF::createThread(void (*)(void*), void*, char const*)::$_0&amp;&gt;(WTF::createThread(void (*)(void*), void*, char const*)::$_0&amp;&amp;&amp;)
 36 29  0x109e39769 std::__1::__function::__func&lt;WTF::createThread(void (*)(void*), void*, char const*)::$_0, std::__1::allocator&lt;WTF::createThread(void (*)(void*), void*, char const*)::$_0&gt;, void ()&gt;::operator()()
 37 30  0x109448faa std::__1::function&lt;void ()&gt;::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>