<?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>167955</bug_id>
          
          <creation_ts>2017-02-07 13:42:28 -0800</creation_ts>
          <short_desc>DOMPromise is sometimes crashing at destruction time.</short_desc>
          <delta_ts>2017-02-16 21:54:04 -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>WebCore Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>DUPLICATE</resolution>
          <dup_id>168354</dup_id>
          
          <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="youenn fablet">youennf</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ap</cc>
    
    <cc>fpizlo</cc>
    
    <cc>keith_miller</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1274142</commentid>
    <comment_count>0</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-02-07 13:42:28 -0800</bug_when>
    <thetext>Trace is something like:
ASSERTION FAILED: vm.heap.mutatorState() == MutatorState::Running || vm.apiLock().ownerThread() != std::this_thread::get_id()
/Users/youenn/dev/Apple/OpenSource/WebKitBuild/Debug/JavaScriptCore.framework/PrivateHeaders/JSCellInlines.h(283) : const JSC::ClassInfo *JSC::JSCell::classInfo(JSC::VM &amp;) const
1   0x114699abd WTFCrash
2   0x116fd1348 JSC::JSCell::classInfo(JSC::VM&amp;) const
3   0x116fd11d1 JSC::JSCell::inherits(JSC::VM&amp;, JSC::ClassInfo const*) const
4   0x116fd7984 WebCore::JSDOMGlobalObject* JSC::jsCast&lt;WebCore::JSDOMGlobalObject*, JSC::JSCell&gt;(JSC::JSCell*)
5   0x116fd77cc JSC::Weak&lt;WebCore::JSDOMGlobalObject&gt;::operator-&gt;() const
6   0x1181ac4d7 WebCore::DeferredPromise::clear()
7   0x1181ac3d7 WebCore::DeferredPromise::~DeferredPromise()
8   0x1181ac5c5 WebCore::DeferredPromise::~DeferredPromise()
9   0x1181ac5e9 WebCore::DeferredPromise::~DeferredPromise()
10  0x116fd6c2f WTF::RefCounted&lt;WebCore::DeferredPromise&gt;::deref() const
11  0x11707f851 WTF::Ref&lt;WebCore::DeferredPromise&gt;::~Ref()
12  0x11707f815 WTF::Ref&lt;WebCore::DeferredPromise&gt;::~Ref()
13  0x11707f7f5 WebCore::DOMPromiseBase::~DOMPromiseBase()
14  0x1178f3fb5 WebCore::DOMPromise&lt;WebCore::IDLInterface&lt;WebCore::FontFace&gt; &gt;::~DOMPromise()
15  0x1178f3f75 WebCore::DOMPromise&lt;WebCore::IDLInterface&lt;WebCore::FontFace&gt; &gt;::~DOMPromise()
16  0x1178f3f3d std::optional_base&lt;WebCore::DOMPromise&lt;WebCore::IDLInterface&lt;WebCore::FontFace&gt; &gt; &gt;::~optional_base()
17  0x1178f3f05 std::optional&lt;WebCore::DOMPromise&lt;WebCore::IDLInterface&lt;WebCore::FontFace&gt; &gt; &gt;::~optional()
18  0x1178f2cb5 std::optional&lt;WebCore::DOMPromise&lt;WebCore::IDLInterface&lt;WebCore::FontFace&gt; &gt; &gt;::~optional()
19  0x1178f2c55 WebCore::FontFace::~FontFace()
20  0x1178f2d15 WebCore::FontFace::~FontFace()
21  0x1178f2d39 WebCore::FontFace::~FontFace()
22  0x1173ecc6f WTF::RefCounted&lt;WebCore::FontFace&gt;::deref() const
23  0x1173ecc19 WebCore::FontFace::deref()
24  0x1173ecbfa WTF::Ref&lt;WebCore::FontFace&gt;::~Ref()
25  0x1173e5055 WTF::Ref&lt;WebCore::FontFace&gt;::~Ref()
26  0x118342619 WebCore::JSDOMWrapper&lt;WebCore::FontFace&gt;::~JSDOMWrapper()
27  0x1183425f5 WebCore::JSFontFace::~JSFontFace()
28  0x11833f605 WebCore::JSFontFace::~JSFontFace()
29  0x11833f0fd WebCore::JSFontFace::destroy(JSC::JSCell*)
30  0x1140f927a JSC::(anonymous namespace)::DestroyFunc::operator()(JSC::VM&amp;, JSC::JSCell*) const
31  0x1140fb8a5 JSC::FreeList JSC::MarkedBlock::Handle::specializedSweep&lt;false, (JSC::MarkedBlock::Handle::EmptyMode)0, (JSC::MarkedBlock::Handle::SweepMode)0, (JSC::MarkedBlock::Handle::SweepDestructionMode)0, (JSC::MarkedBlock::Handle::ScribbleMode)0, (JSC::MarkedBlock::Handle::NewlyAllocatedMode)0, (JSC::MarkedBlock::Handle::MarksMode)0, JSC::(anonymous namespace)::DestroyFunc&gt;(JSC::MarkedBlock::Handle::EmptyMode, JSC::MarkedBlock::Handle::SweepMode, JSC::MarkedBlock::Handle::SweepDestructionMode, JSC::MarkedBlock::Handle::ScribbleMode, JSC::MarkedBlock::Handle::NewlyAllocatedMode, JSC::MarkedBlock::Handle::MarksMode, JSC::(anonymous namespace)::DestroyFunc const&amp;)::&apos;lambda&apos;(unsigned long)::operator()(unsigned long) const

This happens when playing with the GC</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1274676</commentid>
    <comment_count>1</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2017-02-08 17:43:12 -0800</bug_when>
    <thetext>Can you attach a full stack trace? I am curious what is going on with the other threads.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1278092</commentid>
    <comment_count>2</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-02-16 20:27:56 -0800</bug_when>
    <thetext>

*** This bug has been marked as a duplicate of bug 168354 ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1278117</commentid>
    <comment_count>3</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2017-02-16 21:54:04 -0800</bug_when>
    <thetext>Bug 168354 is specific to detaching the debugger, so it cannot be the same issue.

Bug 168406 may be the correct original, or this could be a separate bug. Keith, what do you think?</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>