<?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>158273</bug_id>
          
          <creation_ts>2016-06-01 14:03:49 -0700</creation_ts>
          <short_desc>Crash under eventTargetRespectingTargetRules()</short_desc>
          <delta_ts>2016-06-01 14:41:57 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>DOM</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>achristensen</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>kangil.han</cc>
    
    <cc>rniwa</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1198275</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-06-01 14:03:49 -0700</bug_when>
    <thetext>Crash under eventTargetRespectingTargetRules():
Thread[0] EXC_BAD_ACCESS (SIGSEGV) (KERN_INVALID_ADDRESS at 0x0000000000000014)
[  0] 0x00007fff8b857995 WebCore`WebCore::EventPath::EventPath(WebCore::Node&amp;, WebCore::Event&amp;) [inlined] WebCore::Node::getFlag(WebCore::Node::NodeFlags) const at Node.h:625:49
       621 	
       622 	        DefaultNodeFlags = IsParsingChildrenFinishedFlag
       623 	    };
       624 	
    -&gt; 625 	    bool getFlag(NodeFlags mask) const { return m_nodeFlags &amp; mask; }
       626 	    void setFlag(bool f, NodeFlags mask) const { m_nodeFlags = (m_nodeFlags &amp; ~mask) | (-(int32_t)f &amp; mask); } 
       627 	    void setFlag(NodeFlags mask) const { m_nodeFlags |= mask; } 
       628 	    void clearFlag(NodeFlags mask) const { m_nodeFlags &amp;= ~mask; }
       629 	
    

     0x00007fff8b85798a:    testb %al, %al
     0x00007fff8b85798c:     movq %r15, %r14
     0x00007fff8b85798f:       je 0x5b3995             ; &lt;+117&gt; [inlined] WebCore::Node::getFlag(WebCore::Node::NodeFlags) const at Node.h:217
     0x00007fff8b857991:     movq 0x60(%r15), %r14
 -&gt;  0x00007fff8b857995:     movl 0x14(%r14), %eax
     0x00007fff8b857999:     movl %eax, %ecx
     0x00007fff8b85799b:     andl $0x100004, %ecx      ; imm = 0x100004 
     0x00007fff8b8579a1:     cmpl $0x100004, %ecx      ; imm = 0x100004 
     0x00007fff8b8579a7:      jne 0x5b39cf             ; &lt;+175&gt; [inlined] WebCore::Node::getFlag(WebCore::Node::NodeFlags) const + 4 at Node.h:221

[  0] 0x00007fff8b857995 WebCore`WebCore::EventPath::EventPath(WebCore::Node&amp;, WebCore::Event&amp;) [inlined] WebCore::Node::isElementNode() const at Node.h:217
       213 	    WEBCORE_EXPORT void remove(ExceptionCode&amp;);
       214 	
       215 	    // Other methods (not part of DOM)
       216 	
    -&gt; 217 	    bool isElementNode() const { return getFlag(IsElementFlag); }
       218 	    bool isContainerNode() const { return getFlag(IsContainerFlag); }
       219 	    bool isTextNode() const { return getFlag(IsTextFlag); }
       220 	    bool isHTMLElement() const { return getFlag(IsHTMLFlag); }
       221 	    bool isSVGElement() const { return getFlag(IsSVGFlag); }
    
[  0] 0x00007fff8b857995 WebCore`WebCore::EventPath::EventPath(WebCore::Node&amp;, WebCore::Event&amp;) [inlined] WebCore::Node::pseudoId() const at Node.h:227
       223 	
       224 	    bool isPseudoElement() const { return pseudoId() != NOPSEUDO; }
       225 	    bool isBeforePseudoElement() const { return pseudoId() == BEFORE; }
       226 	    bool isAfterPseudoElement() const { return pseudoId() == AFTER; }
    -&gt; 227 	    PseudoId pseudoId() const { return (isElementNode() &amp;&amp; hasCustomStyleResolveCallbacks()) ? customPseudoId() : NOPSEUDO; }
       228 	
       229 	    virtual bool isMediaControlElement() const { return false; }
       230 	    virtual bool isMediaControls() const { return false; }
       231 	#if ENABLE(VIDEO_TRACK)
    
[  0] 0x00007fff8b857995 WebCore`WebCore::EventPath::EventPath(WebCore::Node&amp;, WebCore::Event&amp;) [inlined] WebCore::Node::isPseudoElement() const at Node.h:224
       220 	    bool isHTMLElement() const { return getFlag(IsHTMLFlag); }
       221 	    bool isSVGElement() const { return getFlag(IsSVGFlag); }
       222 	    bool isMathMLElement() const { return getFlag(IsMathMLFlag); }
       223 	
    -&gt; 224 	    bool isPseudoElement() const { return pseudoId() != NOPSEUDO; }
       225 	    bool isBeforePseudoElement() const { return pseudoId() == BEFORE; }
       226 	    bool isAfterPseudoElement() const { return pseudoId() == AFTER; }
       227 	    PseudoId pseudoId() const { return (isElementNode() &amp;&amp; hasCustomStyleResolveCallbacks()) ? customPseudoId() : NOPSEUDO; }
       228 	
    
[  0] 0x00007fff8b857995 WebCore`WebCore::EventPath::EventPath(WebCore::Node&amp;, WebCore::Event&amp;) [inlined] WTF::TypeCastTraits&lt;WebCore::PseudoElement const, WebCore::Node const, false&gt;::isType(WebCore::Node const&amp;) at PseudoElement.h:83
[  0] 0x00007fff8b857995 WebCore`WebCore::EventPath::EventPath(WebCore::Node&amp;, WebCore::Event&amp;) [inlined] WTF::TypeCastTraits&lt;WebCore::PseudoElement const, WebCore::Node const, false&gt;::isOfType(WebCore::Node const&amp;) at PseudoElement.h:82
[  0] 0x00007fff8b857995 WebCore`WebCore::EventPath::EventPath(WebCore::Node&amp;, WebCore::Event&amp;) [inlined] bool WTF::is&lt;WebCore::PseudoElement, WebCore::Node&gt;(WebCore::Node&amp;) at TypeCasts.h:59
[  0] 0x00007fff8b857995 WebCore`WebCore::EventPath::EventPath(WebCore::Node&amp;, WebCore::Event&amp;) [inlined] WebCore::EventPath::eventTargetRespectingTargetRules(WebCore::Node&amp;) at EventPath.h:55
[  0] 0x00007fff8b857995 WebCore`WebCore::EventPath::EventPath(WebCore::Node&amp;, WebCore::Event&amp;) + 117 at EventPath.cpp:94
[  1] 0x00007fff8b84f47d WebCore`WebCore::EventDispatcher::dispatchEvent(WebCore::Node*, WebCore::Event&amp;) + 77 at EventDispatcher.cpp:157:15
[  2] 0x00007fff8b40cad3 WebCore`WebCore::AnimationControllerPrivate::fireEventsAndUpdateStyle() + 355 at AnimationController.cpp:208:13
[  3] 0x00007fff8b581e66 WebCore`WebCore::AnimationControllerPrivate::animationTimerFired() + 182 at AnimationController.cpp:272:5
[  4] 0x00007fff8b2b760f WebCore`WebCore::ThreadTimers::sharedTimerFiredInternal() + 175 at ThreadTimers.cpp:121:9
[  5] 0x00007fff8b2b754e WebCore`WebCore::timerFired(__CFRunLoopTimer*, void*) + 30 at MainThreadSharedTimerCF.cpp:74:5</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1198276</commentid>
    <comment_count>1</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-06-01 14:04:08 -0700</bug_when>
    <thetext>&lt;rdar://problem/26343998&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1198280</commentid>
    <comment_count>2</comment_count>
      <attachid>280266</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-06-01 14:07:53 -0700</bug_when>
    <thetext>Created attachment 280266
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1198294</commentid>
    <comment_count>3</comment_count>
      <attachid>280266</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-06-01 14:41:50 -0700</bug_when>
    <thetext>Comment on attachment 280266
Patch

Clearing flags on attachment: 280266

Committed r201571: &lt;http://trac.webkit.org/changeset/201571&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1198295</commentid>
    <comment_count>4</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2016-06-01 14:41:57 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>280266</attachid>
            <date>2016-06-01 14:07:53 -0700</date>
            <delta_ts>2016-06-01 14:41:50 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-158273-20160601140911.patch</filename>
            <type>text/plain</type>
            <size>1805</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjAxNTU2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGIxYWIxMmMyOTgxNTQ4
YmI5NGJjNGEyYmJlZTAxZDkxNDk5Yzc2Yy4uOWVjMzM2MzkwMWFhZjIyZWIxZTJjMmRlNzg2OWUw
ZThhY2VjZmFhNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDE2LTA2LTAxICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQ3Jhc2ggdW5kZXIgZXZlbnRU
YXJnZXRSZXNwZWN0aW5nVGFyZ2V0UnVsZXMoKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU4MjczCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8yNjM0
Mzk5OD4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBU
aGUgY29kZSB3b3VsZCBjYWxsIG5vZGVPckhvc3RJZlBzZXVkb0VsZW1lbnQoKSwgd2hpY2ggY2Fu
IHJldHVybiBudWxsCisgICAgICAgIGFuZCB0aGVuIGRlcmVmZXJlbmNlIGl0IGluIGV2ZW50VGFy
Z2V0UmVzcGVjdGluZ1RhcmdldFJ1bGVzKCkgd2l0aG91dAorICAgICAgICBudWxsIGNoZWNrLiBU
aGlzIHBhdGNoIGFkZHMgYSBudWxsIGNoZWNrLiBXaGVuIHRoZSBub2RlIGlzIG51bGwsIHRoZQor
ICAgICAgICB3aGlsZSBsb29wIGFmdGVyIHdpbGwgZG8gbm90aGluZyBhbmQgdGh1cyB0aGUgdGFy
Z2V0IHdpbGwgbm90IGJlIHVzZWQuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCB3ZSBkbyBub3Qg
aGF2ZSBhIGdvb2QgcmVwcm9kdWN0aW9uIGNhc2UuCisKKyAgICAgICAgKiBkb20vRXZlbnRQYXRo
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkV2ZW50UGF0aDo6RXZlbnRQYXRoKToKKwogMjAxNi0w
Ni0wMSAgWW91ZW5uIEZhYmxldCAgPHlvdWVubi5mYWJsZXRAY3JmLmNhbm9uLmZyPgogCiAgICAg
ICAgIFJlbW92ZSBhbGxvY2F0aW9uIG9mIFN1YnJlc291cmNlTG9hZGVyOjptX3JlcXVlc3RDb3Vu
dFRyYWNrZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FdmVudFBhdGguY3BwIGIv
U291cmNlL1dlYkNvcmUvZG9tL0V2ZW50UGF0aC5jcHAKaW5kZXggYmI5YzM2MzI5OTIxZWUwNjdl
ZmVlOTcyZjVhNjQ2ZjYwZWUzODYwZC4uN2VlNGJlOWRlNWFiYzM4MTY1ZDE1ZmE4YWQ4NWY1MDU4
ZTM5ZjBkNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50UGF0aC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50UGF0aC5jcHAKQEAgLTkxLDcgKzkxLDcgQEAgRXZl
bnRQYXRoOjpFdmVudFBhdGgoTm9kZSYgb3JpZ2luYWxUYXJnZXQsIEV2ZW50JiBldmVudCkKICAg
ICBib29sIGlzVG91Y2hFdmVudCA9IGV2ZW50LmlzVG91Y2hFdmVudCgpOwogI2VuZGlmCiAgICAg
Tm9kZSogbm9kZSA9IG5vZGVPckhvc3RJZlBzZXVkb0VsZW1lbnQoJm9yaWdpbmFsVGFyZ2V0KTsK
LSAgICBOb2RlKiB0YXJnZXQgPSBldmVudFRhcmdldFJlc3BlY3RpbmdUYXJnZXRSdWxlcygqbm9k
ZSk7CisgICAgTm9kZSogdGFyZ2V0ID0gbm9kZSA/IGV2ZW50VGFyZ2V0UmVzcGVjdGluZ1Rhcmdl
dFJ1bGVzKCpub2RlKSA6IG51bGxwdHI7CiAgICAgd2hpbGUgKG5vZGUpIHsKICAgICAgICAgd2hp
bGUgKG5vZGUpIHsKICAgICAgICAgICAgIEV2ZW50VGFyZ2V0KiBjdXJyZW50VGFyZ2V0ID0gZXZl
bnRUYXJnZXRSZXNwZWN0aW5nVGFyZ2V0UnVsZXMoKm5vZGUpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>