<?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>182880</bug_id>
          
          <creation_ts>2018-02-16 11:47:15 -0800</creation_ts>
          <short_desc>Crash under WebCore::EventTarget::fireEventListeners</short_desc>
          <delta_ts>2018-02-19 09:22:17 -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>Web Audio</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>aestes</cc>
    
    <cc>beidson</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ddkilzer</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>jer.noble</cc>
    
    <cc>jonlee</cc>
    
    <cc>rniwa</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1399964</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2018-02-16 11:47:15 -0800</bug_when>
    <thetext>Crash under WebCore::EventTarget::fireEventListeners:
Thread 0 name:  Dispatch queue: com.apple.main-thread
Thread 0 Crashed ↩:
0   WebCore                       	0x000000018b640544 WebCore::EventTarget::fireEventListeners(WebCore::Event&amp;, WTF::Vector&lt;WTF::RefPtr&lt;WebCore::RegisteredEventListener, WTF::DumbPtrTraits&lt;WebCore::RegisteredEventListener&gt; &gt;, 1ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc&gt;) + 76 (Document.h:1925)
1   WebCore                       	0x000000018b640540 WebCore::EventTarget::fireEventListeners(WebCore::Event&amp;, WTF::Vector&lt;WTF::RefPtr&lt;WebCore::RegisteredEventListener, WTF::DumbPtrTraits&lt;WebCore::RegisteredEventListener&gt; &gt;, 1ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc&gt;) + 72 (EventTarget.cpp:258)
2   WebCore                       	0x000000018b63c3a8 WebCore::EventTarget::fireEventListeners(WebCore::Event&amp;) + 596 (EventTarget.cpp:231)
3   WebCore                       	0x000000018b6404dc WebCore::EventTarget::dispatchEvent(WebCore::Event&amp;) + 116 (EventTarget.cpp:190)
4   WebCore                       	0x000000018b352d40 WTF::Function&lt;void ()&gt;::CallableWrapper&lt;WebCore::AudioScheduledSourceNode::finish()::$_0&gt;::call() + 80 (AudioScheduledSourceNode.cpp:171)
[…]</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1399966</commentid>
    <comment_count>1</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2018-02-16 11:47:29 -0800</bug_when>
    <thetext>&lt;rdar://problem/20788804&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1399971</commentid>
    <comment_count>2</comment_count>
      <attachid>334056</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2018-02-16 11:59:17 -0800</bug_when>
    <thetext>Created attachment 334056
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1399973</commentid>
    <comment_count>3</comment_count>
      <attachid>334057</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2018-02-16 12:01:48 -0800</bug_when>
    <thetext>Created attachment 334057
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1399985</commentid>
    <comment_count>4</comment_count>
      <attachid>334062</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2018-02-16 12:50:00 -0800</bug_when>
    <thetext>Created attachment 334062
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1399991</commentid>
    <comment_count>5</comment_count>
      <attachid>334062</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2018-02-16 13:06:39 -0800</bug_when>
    <thetext>Comment on attachment 334062
Patch

Clearing flags on attachment: 334062

Committed r228574: &lt;https://trac.webkit.org/changeset/228574&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1399992</commentid>
    <comment_count>6</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2018-02-16 13:06:40 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1400118</commentid>
    <comment_count>7</comment_count>
      <attachid>334062</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2018-02-16 18:28:11 -0800</bug_when>
    <thetext>Comment on attachment 334062
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=334062&amp;action=review

&gt; Source/WebCore/Modules/webaudio/AudioScheduledSourceNode.cpp:177
&gt; +    scriptExecutionContext-&gt;postTask([this, protectedThis = makeRef(*this)] (auto&amp;) {

Won’t ‘protectedThis’ be an unused lambda?  Why not remove ‘this’ and use ‘protectedThis’ in the body?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1400119</commentid>
    <comment_count>8</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2018-02-16 18:40:22 -0800</bug_when>
    <thetext>(In reply to David Kilzer (:ddkilzer) from comment #7)
&gt; Comment on attachment 334062 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=334062&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/Modules/webaudio/AudioScheduledSourceNode.cpp:177
&gt; &gt; +    scriptExecutionContext-&gt;postTask([this, protectedThis = makeRef(*this)] (auto&amp;) {
&gt; 
&gt; Won’t ‘protectedThis’ be an unused lambda?  Why not remove ‘this’ and use
&gt; ‘protectedThis’ in the body?

Oh, does the compiler complain about this now? We have used this pattern in many places (capture this and protectedThis). It usually keeps the code more concise. However, in this case, I had to use an explicit this-&gt; anyway because Gcc sucks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1400121</commentid>
    <comment_count>9</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2018-02-16 18:58:45 -0800</bug_when>
    <thetext>(In reply to Chris Dumez from comment #8)
&gt; (In reply to David Kilzer (:ddkilzer) from comment #7)
&gt; &gt; Comment on attachment 334062 [details]
&gt; &gt; Patch
&gt; &gt; 
&gt; &gt; View in context:
&gt; &gt; https://bugs.webkit.org/attachment.cgi?id=334062&amp;action=review
&gt; &gt; 
&gt; &gt; &gt; Source/WebCore/Modules/webaudio/AudioScheduledSourceNode.cpp:177
&gt; &gt; &gt; +    scriptExecutionContext-&gt;postTask([this, protectedThis = makeRef(*this)] (auto&amp;) {
&gt; &gt; 
&gt; &gt; Won’t ‘protectedThis’ be an unused lambda?  Why not remove ‘this’ and use
&gt; &gt; ‘protectedThis’ in the body?
&gt; 
&gt; Oh, does the compiler complain about this now? We have used this pattern in
&gt; many places (capture this and protectedThis). It usually keeps the code more
&gt; concise. However, in this case, I had to use an explicit this-&gt; anyway
&gt; because Gcc sucks.

I do not see any build failure anywhere so I do not think we need to change anything. protectedThis variables are generally unused.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1400136</commentid>
    <comment_count>10</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2018-02-16 20:23:56 -0800</bug_when>
    <thetext>(In reply to Chris Dumez from comment #9)
&gt; (In reply to Chris Dumez from comment #8)
&gt; &gt; (In reply to David Kilzer (:ddkilzer) from comment #7)
&gt; &gt; &gt; Comment on attachment 334062 [details]
&gt; &gt; &gt; Patch
&gt; &gt; &gt; 
&gt; &gt; &gt; View in context:
&gt; &gt; &gt; https://bugs.webkit.org/attachment.cgi?id=334062&amp;action=review
&gt; &gt; &gt; 
&gt; &gt; &gt; &gt; Source/WebCore/Modules/webaudio/AudioScheduledSourceNode.cpp:177
&gt; &gt; &gt; &gt; +    scriptExecutionContext-&gt;postTask([this, protectedThis = makeRef(*this)] (auto&amp;) {
&gt; &gt; &gt; 
&gt; &gt; &gt; Won’t ‘protectedThis’ be an unused lambda?  Why not remove ‘this’ and use
&gt; &gt; &gt; ‘protectedThis’ in the body?
&gt; &gt; 
&gt; &gt; Oh, does the compiler complain about this now? We have used this pattern in
&gt; &gt; many places (capture this and protectedThis). It usually keeps the code more
&gt; &gt; concise. However, in this case, I had to use an explicit this-&gt; anyway
&gt; &gt; because Gcc sucks.
&gt; 
&gt; I do not see any build failure anywhere so I do not think we need to change
&gt; anything. protectedThis variables are generally unused.

Okay.  Could have sworn this would have triggered such a warning based on the current code (in future releases with newer clang compilers that warn about this), but the buildbots don&apos;t lie.  :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1400375</commentid>
    <comment_count>11</comment_count>
    <who name="Andy Estes">aestes</who>
    <bug_when>2018-02-19 09:22:17 -0800</bug_when>
    <thetext>I don&apos;t think new clang warns about captured values with non-trivial destructors, because the effects of running the destructor might be how we intend to &quot;use&quot; the captured value. That&apos;s definitely the case for protectedThis.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>334056</attachid>
            <date>2018-02-16 11:59:17 -0800</date>
            <delta_ts>2018-02-16 12:01:47 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-182880-20180216115916.patch</filename>
            <type>text/plain</type>
            <size>6336</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI4NTY4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTRiY2RlMGE4YTFlODhl
NTUzZWZlYTAzODMyNDE5MmI1ZTA4OGU3Ni4uNzljMGMwYzhjMjIwZWIxOTJmNDE5ODE4NzZlNTIx
YTkzNzFhY2JmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE4LTAyLTE2ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQ3Jhc2ggdW5kZXIgV2ViQ29y
ZTo6RXZlbnRUYXJnZXQ6OmZpcmVFdmVudExpc3RlbmVycworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgyODgwCisgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS8yMDc4ODgwND4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBNYWtlIHN1cmUgdGhlICdlbmRlZCcgZXZlbnQgZG9lcyBub3QgZ2V0IGRpc3BhdGNoZWQg
b24gYQorICAgICAgICBBdWRpb1NjaGVkdWxlZFNvdXJjZU5vZGUgYWZ0ZXIgQWN0aXZlRE9NT2Jq
ZWN0cyBoYXZlIGJlZW4gc3RvcHBlZC4KKworICAgICAgICBUZXN0OiB3ZWJhdWRpby9hdWRpb2J1
ZmZlcnNvdXJjZS1lbmRlZC1kZXRhY2hlZC1mcmFtZS5odG1sCisKKyAgICAgICAgKiBNb2R1bGVz
L3dlYmF1ZGlvL0F1ZGlvU2NoZWR1bGVkU291cmNlTm9kZS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpBdWRpb1NjaGVkdWxlZFNvdXJjZU5vZGU6OmZpbmlzaCk6CisKIDIwMTgtMDItMTYgIENocmlz
IER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLCBmaXggaU9T
IGJ1aWxkIGFmdGVyIHIyMjg1NjIuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L3dlYmF1ZGlvL0F1ZGlvU2NoZWR1bGVkU291cmNlTm9kZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3dlYmF1ZGlvL0F1ZGlvU2NoZWR1bGVkU291cmNlTm9kZS5jcHAKaW5kZXggODAzNmZk
OWZhOWQ5NzNiMWQ1ZjcwYTY0N2QzMTEwYjAyMzA2NTA2MC4uMDMxZDE2NjNjZGVhNWE0NDFlMjll
Y2ZhYjliNjA3Yjc4ZDhkYTBlNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93
ZWJhdWRpby9BdWRpb1NjaGVkdWxlZFNvdXJjZU5vZGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvd2ViYXVkaW8vQXVkaW9TY2hlZHVsZWRTb3VyY2VOb2RlLmNwcApAQCAtMzMsNiAr
MzMsNyBAQAogI2luY2x1ZGUgIkV2ZW50LmgiCiAjaW5jbHVkZSAiRXZlbnROYW1lcy5oIgogI2lu
Y2x1ZGUgIlNjcmlwdENvbnRyb2xsZXIuaCIKKyNpbmNsdWRlICJTY3JpcHRFeGVjdXRpb25Db250
ZXh0LmgiCiAjaW5jbHVkZSA8YWxnb3JpdGhtPgogI2luY2x1ZGUgPHd0Zi9NYXRoRXh0cmFzLmg+
CiAKQEAgLTE2NiwxMSArMTY3LDIwIEBAIHZvaWQgQXVkaW9TY2hlZHVsZWRTb3VyY2VOb2RlOjpm
aW5pc2goKQogICAgICAgICBjb250ZXh0KCkuZGVjcmVtZW50QWN0aXZlU291cmNlQ291bnQoKTsK
ICAgICB9CiAKLSAgICBpZiAobV9oYXNFbmRlZExpc3RlbmVyKSB7Ci0gICAgICAgIGNhbGxPbk1h
aW5UaHJlYWQoW3Byb3RlY3RlZFRoaXMgPSBtYWtlUmVmKCp0aGlzKV0gKCkgbXV0YWJsZSB7Ci0g
ICAgICAgICAgICBwcm90ZWN0ZWRUaGlzLT5kaXNwYXRjaEV2ZW50KEV2ZW50OjpjcmVhdGUoZXZl
bnROYW1lcygpLmVuZGVkRXZlbnQsIGZhbHNlLCBmYWxzZSkpOwotICAgICAgICB9KTsKLSAgICB9
CisgICAgaWYgKCFtX2hhc0VuZGVkTGlzdGVuZXIpCisgICAgICAgIHJldHVybjsKKworICAgIGF1
dG8qIHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQgPSB0aGlzLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0
KCk7CisgICAgaWYgKCFzY3JpcHRFeGVjdXRpb25Db250ZXh0KQorICAgICAgICByZXR1cm47CisK
KyAgICBzY3JpcHRFeGVjdXRpb25Db250ZXh0LT5wb3N0VGFzayhbdGhpcywgcHJvdGVjdGVkVGhp
cyA9IG1ha2VSZWYoKnRoaXMpXSAoYXV0byYpIG11dGFibGUgeworICAgICAgICAvLyBNYWtlIHN1
cmUgQWN0aXZlRE9NT2JqZWN0cyBoYXZlIG5vdCBiZWVuIHN0b3BwZWQgYWZ0ZXIgc2NoZWR1bGlu
ZyB0aGlzIHRhc2suCisgICAgICAgIGlmICghdGhpcy0+c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgp
KQorICAgICAgICAgICAgcmV0dXJuOworCisgICAgICAgIHByb3RlY3RlZFRoaXMtPmRpc3BhdGNo
RXZlbnQoRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkuZW5kZWRFdmVudCwgZmFsc2UsIGZhbHNl
KSk7CisgICAgfSk7CiB9CiAKIGJvb2wgQXVkaW9TY2hlZHVsZWRTb3VyY2VOb2RlOjphZGRFdmVu
dExpc3RlbmVyKGNvbnN0IEF0b21pY1N0cmluZyYgZXZlbnRUeXBlLCBSZWY8RXZlbnRMaXN0ZW5l
cj4mJiBsaXN0ZW5lciwgY29uc3QgQWRkRXZlbnRMaXN0ZW5lck9wdGlvbnMmIG9wdGlvbnMpCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cK
aW5kZXggZmU2NmE5YmFhYWRjYWU3OWU0ODVjNjE5YzJjZjNlNGQzMzZjNzAwZC4uYTc5YzM3MmU3
Y2Q3YTM3YzRkZjg5YTU1MjliMDE3ZDhlYTE1MGM3ZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisy
MDE4LTAyLTE2ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQ3Jh
c2ggdW5kZXIgV2ViQ29yZTo6RXZlbnRUYXJnZXQ6OmZpcmVFdmVudExpc3RlbmVycworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgyODgwCisgICAgICAg
IDxyZGFyOi8vcHJvYmxlbS8yMDc4ODgwND4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBBZGQgbGF5b3V0IHRlc3QgY292ZXJhZ2UuCisKKyAgICAgICAg
KiB3ZWJhdWRpby9hdWRpb2J1ZmZlcnNvdXJjZS1lbmRlZC1kZXRhY2hlZC1mcmFtZS1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHdlYmF1ZGlvL2F1ZGlvYnVmZmVyc291cmNlLWVuZGVk
LWRldGFjaGVkLWZyYW1lLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYmF1ZGlvL3Jlc291cmNl
cy9hdWRpb2J1ZmZlcnNvdXJjZS1lbmRlZC1kZXRhY2hlZC1mcmFtZS1pZnJhbWUuaHRtbDogQWRk
ZWQuCisKIDIwMTgtMDItMTYgIEZ1amlpIEhpcm9ub3JpICA8SGlyb25vcmkuRnVqaWlAc29ueS5j
b20+CiAKICAgICAgICAgZmFzdC9mcmFtZXMvc2FuZGJveGVkLWlmcmFtZS1uYXZpZ2F0aW9uLXRv
cC1kZW5pZWQuaHRtbCBpcyBjcmFzaGluZyBpbiBJbnNwZWN0b3I6OmNyZWF0ZVNjcmlwdENhbGxT
dGFja0ZvckNvbnNvbGU6OkV4ZWMgZm9yIEdUSwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2Vi
YXVkaW8vYXVkaW9idWZmZXJzb3VyY2UtZW5kZWQtZGV0YWNoZWQtZnJhbWUtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8vYXVkaW9idWZmZXJzb3VyY2UtZW5kZWQtZGV0YWNoZWQt
ZnJhbWUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjUwNTU5NzJiOGNiYmY4MDRmMDBmYjc5YzQ1
NDg4MzhhNDM1YTdiYzQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9h
dWRpb2J1ZmZlcnNvdXJjZS1lbmRlZC1kZXRhY2hlZC1mcmFtZS1leHBlY3RlZC50eHQKQEAgLTAs
MCArMSw5IEBACitUZXN0IHRoYXQgd2UgZG8gbm90IGNyYXNoIHdoZW4gdHJ5aW5nIHRvIGZpcmUg
YW4gJ2VuZGVkJyBldmVudCBhdCBhIGF1ZGlvYnVmZmVyc291cmNlIG5vZGUgaW4gYSBkZXRhY2hl
ZCBmcmFtZS4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBt
ZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1Mgc3VjY2Vzc2Z1
bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy93ZWJhdWRpby9hdWRpb2J1ZmZlcnNvdXJjZS1lbmRlZC1kZXRhY2hlZC1mcmFtZS5odG1s
IGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8vYXVkaW9idWZmZXJzb3VyY2UtZW5kZWQtZGV0YWNoZWQt
ZnJhbWUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi45MDA1YTYwMjgyOGYyNjEzMzBjMmM0YTliMDMzYWYxYjVl
NzUyNjE0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8vYXVkaW9idWZm
ZXJzb3VyY2UtZW5kZWQtZGV0YWNoZWQtZnJhbWUuaHRtbApAQCAtMCwwICsxLDI0IEBACis8IURP
Q1RZUEUgaHRtbD4KKzxoZWFkPgorICAgIDxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvanMtdGVz
dC5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdD4KKyAgICAgICAgZnVuY3Rpb24gcnVuVGVzdCgp
CisgICAgICAgIHsKKyAgICAgICAgICAgIGRlc2NyaXB0aW9uKCJUZXN0IHRoYXQgd2UgZG8gbm90
IGNyYXNoIHdoZW4gdHJ5aW5nIHRvIGZpcmUgYW4gJ2VuZGVkJyBldmVudCBhdCBhIGF1ZGlvYnVm
ZmVyc291cmNlIG5vZGUgaW4gYSBkZXRhY2hlZCBmcmFtZS4iKTsKKyAgICAgICAgICAgIGpzVGVz
dElzQXN5bmMgPSB0cnVlOworCisgICAgICAgICAgICBmcmFtZSA9IGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoImlmcmFtZSIpOworICAgICAgICAgICAgZnJhbWUuc3JjID0gInJlc291cmNlcy9hdWRp
b2J1ZmZlcnNvdXJjZS1lbmRlZC1kZXRhY2hlZC1mcmFtZS1pZnJhbWUuaHRtbCI7CisgICAgICAg
ICAgICBmcmFtZS5vbmxvYWQgPSBmdW5jdGlvbigpIHsKKyAgICAgICAgICAgICAgICBmcmFtZS5j
b250ZW50V2luZG93LnJ1blRlc3QoKTsKKyAgICAgICAgICAgICAgICBmcmFtZS5yZW1vdmUoKTsK
KyAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgICAg
ICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICAgICAgICAgICAgICB9LCAxMCk7CisgICAgICAgICAg
ICB9OworICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChmcmFtZSk7CisgICAg
ICAgIH0KKyAgICA8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4K
KzwvYm9keT4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmF1ZGlvL3Jlc291cmNlcy9hdWRp
b2J1ZmZlcnNvdXJjZS1lbmRlZC1kZXRhY2hlZC1mcmFtZS1pZnJhbWUuaHRtbCBiL0xheW91dFRl
c3RzL3dlYmF1ZGlvL3Jlc291cmNlcy9hdWRpb2J1ZmZlcnNvdXJjZS1lbmRlZC1kZXRhY2hlZC1m
cmFtZS1pZnJhbWUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42ZTkzYTk5MTk4OTU5NTU0YzdiZjlhMzk1NWU4
ZWM2ZGQwODk2YmRmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8vcmVz
b3VyY2VzL2F1ZGlvYnVmZmVyc291cmNlLWVuZGVkLWRldGFjaGVkLWZyYW1lLWlmcmFtZS5odG1s
CkBAIC0wLDAgKzEsMjYgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8Ym9keT4KKzxzY3Jp
cHQgc3JjPSJhdWRpby10ZXN0aW5nLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJhdWRpb2J1
ZmZlcnNvdXJjZS10ZXN0aW5nLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+CisgICAgdmFyIGNvbnRl
eHQ7CisgICAgdmFyIHNvdXJjZTsKKworICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQorICAgIHsKKyAg
ICAgICAgdmFyIHNhbXBsZVJhdGUgPSA0NDEwMC4wOworICAgICAgICB2YXIgbnVtYmVyT2ZGcmFt
ZXMgPSAzMjsKKyAgICAgICAgY29udGV4dCA9IG5ldyB3ZWJraXRPZmZsaW5lQXVkaW9Db250ZXh0
KDEsIG51bWJlck9mRnJhbWVzLCBzYW1wbGVSYXRlKTsKKyAgICAgICAgc291cmNlID0gY29udGV4
dC5jcmVhdGVCdWZmZXJTb3VyY2UoKTsKKyAgICAgICAgc291cmNlLmJ1ZmZlciA9IGNyZWF0ZVRl
c3RCdWZmZXIoY29udGV4dCwgbnVtYmVyT2ZGcmFtZXMpOworICAgICAgICBzb3VyY2UuY29ubmVj
dChjb250ZXh0LmRlc3RpbmF0aW9uKTsKKyAgICAgICAgc291cmNlLm9uZW5kZWQgPSBmdW5jdGlv
bigpCisgICAgICAgIHsKKyAgICAgICAgfQorICAgICAgICBzb3VyY2Uuc3RhcnQoMCk7CisgICAg
ICAgIGNvbnRleHQuc3RhcnRSZW5kZXJpbmcoKTsKKyAgICB9Cis8L3NjcmlwdD4KKzwvYm9keT4K
KzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>334057</attachid>
            <date>2018-02-16 12:01:48 -0800</date>
            <delta_ts>2018-02-16 12:49:59 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-182880-20180216120148.patch</filename>
            <type>text/plain</type>
            <size>6313</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI4NTY4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTRiY2RlMGE4YTFlODhl
NTUzZWZlYTAzODMyNDE5MmI1ZTA4OGU3Ni4uNzljMGMwYzhjMjIwZWIxOTJmNDE5ODE4NzZlNTIx
YTkzNzFhY2JmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE4LTAyLTE2ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQ3Jhc2ggdW5kZXIgV2ViQ29y
ZTo6RXZlbnRUYXJnZXQ6OmZpcmVFdmVudExpc3RlbmVycworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgyODgwCisgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS8yMDc4ODgwND4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBNYWtlIHN1cmUgdGhlICdlbmRlZCcgZXZlbnQgZG9lcyBub3QgZ2V0IGRpc3BhdGNoZWQg
b24gYQorICAgICAgICBBdWRpb1NjaGVkdWxlZFNvdXJjZU5vZGUgYWZ0ZXIgQWN0aXZlRE9NT2Jq
ZWN0cyBoYXZlIGJlZW4gc3RvcHBlZC4KKworICAgICAgICBUZXN0OiB3ZWJhdWRpby9hdWRpb2J1
ZmZlcnNvdXJjZS1lbmRlZC1kZXRhY2hlZC1mcmFtZS5odG1sCisKKyAgICAgICAgKiBNb2R1bGVz
L3dlYmF1ZGlvL0F1ZGlvU2NoZWR1bGVkU291cmNlTm9kZS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpBdWRpb1NjaGVkdWxlZFNvdXJjZU5vZGU6OmZpbmlzaCk6CisKIDIwMTgtMDItMTYgIENocmlz
IER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLCBmaXggaU9T
IGJ1aWxkIGFmdGVyIHIyMjg1NjIuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L3dlYmF1ZGlvL0F1ZGlvU2NoZWR1bGVkU291cmNlTm9kZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3dlYmF1ZGlvL0F1ZGlvU2NoZWR1bGVkU291cmNlTm9kZS5jcHAKaW5kZXggODAzNmZk
OWZhOWQ5NzNiMWQ1ZjcwYTY0N2QzMTEwYjAyMzA2NTA2MC4uNWU2N2Q0ODQ5MWE1NzljODMxYzdi
OWM3NTI3Y2JmMzUxYTIwN2FlZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93
ZWJhdWRpby9BdWRpb1NjaGVkdWxlZFNvdXJjZU5vZGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvd2ViYXVkaW8vQXVkaW9TY2hlZHVsZWRTb3VyY2VOb2RlLmNwcApAQCAtMzMsNiAr
MzMsNyBAQAogI2luY2x1ZGUgIkV2ZW50LmgiCiAjaW5jbHVkZSAiRXZlbnROYW1lcy5oIgogI2lu
Y2x1ZGUgIlNjcmlwdENvbnRyb2xsZXIuaCIKKyNpbmNsdWRlICJTY3JpcHRFeGVjdXRpb25Db250
ZXh0LmgiCiAjaW5jbHVkZSA8YWxnb3JpdGhtPgogI2luY2x1ZGUgPHd0Zi9NYXRoRXh0cmFzLmg+
CiAKQEAgLTE2NiwxMSArMTY3LDIwIEBAIHZvaWQgQXVkaW9TY2hlZHVsZWRTb3VyY2VOb2RlOjpm
aW5pc2goKQogICAgICAgICBjb250ZXh0KCkuZGVjcmVtZW50QWN0aXZlU291cmNlQ291bnQoKTsK
ICAgICB9CiAKLSAgICBpZiAobV9oYXNFbmRlZExpc3RlbmVyKSB7Ci0gICAgICAgIGNhbGxPbk1h
aW5UaHJlYWQoW3Byb3RlY3RlZFRoaXMgPSBtYWtlUmVmKCp0aGlzKV0gKCkgbXV0YWJsZSB7Ci0g
ICAgICAgICAgICBwcm90ZWN0ZWRUaGlzLT5kaXNwYXRjaEV2ZW50KEV2ZW50OjpjcmVhdGUoZXZl
bnROYW1lcygpLmVuZGVkRXZlbnQsIGZhbHNlLCBmYWxzZSkpOwotICAgICAgICB9KTsKLSAgICB9
CisgICAgaWYgKCFtX2hhc0VuZGVkTGlzdGVuZXIpCisgICAgICAgIHJldHVybjsKKworICAgIGF1
dG8qIHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQgPSB0aGlzLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0
KCk7CisgICAgaWYgKCFzY3JpcHRFeGVjdXRpb25Db250ZXh0KQorICAgICAgICByZXR1cm47CisK
KyAgICBzY3JpcHRFeGVjdXRpb25Db250ZXh0LT5wb3N0VGFzayhbdGhpcywgcHJvdGVjdGVkVGhp
cyA9IG1ha2VSZWYoKnRoaXMpXSAoYXV0byYpIHsKKyAgICAgICAgLy8gTWFrZSBzdXJlIEFjdGl2
ZURPTU9iamVjdHMgaGF2ZSBub3QgYmVlbiBzdG9wcGVkIGFmdGVyIHNjaGVkdWxpbmcgdGhpcyB0
YXNrLgorICAgICAgICBpZiAoIXRoaXMtPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKSkKKyAgICAg
ICAgICAgIHJldHVybjsKKworICAgICAgICBkaXNwYXRjaEV2ZW50KEV2ZW50OjpjcmVhdGUoZXZl
bnROYW1lcygpLmVuZGVkRXZlbnQsIGZhbHNlLCBmYWxzZSkpOworICAgIH0pOwogfQogCiBib29s
IEF1ZGlvU2NoZWR1bGVkU291cmNlTm9kZTo6YWRkRXZlbnRMaXN0ZW5lcihjb25zdCBBdG9taWNT
dHJpbmcmIGV2ZW50VHlwZSwgUmVmPEV2ZW50TGlzdGVuZXI+JiYgbGlzdGVuZXIsIGNvbnN0IEFk
ZEV2ZW50TGlzdGVuZXJPcHRpb25zJiBvcHRpb25zKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGZlNjZhOWJhYWFkY2FlNzll
NDg1YzYxOWMyY2YzZTRkMzM2YzcwMGQuLmE3OWMzNzJlN2NkN2EzN2M0ZGY4OWE1NTI5YjAxN2Q4
ZWExNTBjN2UgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAxOC0wMi0xNiAgQ2hyaXMgRHVtZXog
IDxjZHVtZXpAYXBwbGUuY29tPgorCisgICAgICAgIENyYXNoIHVuZGVyIFdlYkNvcmU6OkV2ZW50
VGFyZ2V0OjpmaXJlRXZlbnRMaXN0ZW5lcnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE4Mjg4MAorICAgICAgICA8cmRhcjovL3Byb2JsZW0vMjA3ODg4
MDQ+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRk
IGxheW91dCB0ZXN0IGNvdmVyYWdlLgorCisgICAgICAgICogd2ViYXVkaW8vYXVkaW9idWZmZXJz
b3VyY2UtZW5kZWQtZGV0YWNoZWQtZnJhbWUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiB3ZWJhdWRpby9hdWRpb2J1ZmZlcnNvdXJjZS1lbmRlZC1kZXRhY2hlZC1mcmFtZS5odG1sOiBB
ZGRlZC4KKyAgICAgICAgKiB3ZWJhdWRpby9yZXNvdXJjZXMvYXVkaW9idWZmZXJzb3VyY2UtZW5k
ZWQtZGV0YWNoZWQtZnJhbWUtaWZyYW1lLmh0bWw6IEFkZGVkLgorCiAyMDE4LTAyLTE2ICBGdWpp
aSBIaXJvbm9yaSAgPEhpcm9ub3JpLkZ1amlpQHNvbnkuY29tPgogCiAgICAgICAgIGZhc3QvZnJh
bWVzL3NhbmRib3hlZC1pZnJhbWUtbmF2aWdhdGlvbi10b3AtZGVuaWVkLmh0bWwgaXMgY3Jhc2hp
bmcgaW4gSW5zcGVjdG9yOjpjcmVhdGVTY3JpcHRDYWxsU3RhY2tGb3JDb25zb2xlOjpFeGVjIGZv
ciBHVEsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmF1ZGlvL2F1ZGlvYnVmZmVyc291cmNl
LWVuZGVkLWRldGFjaGVkLWZyYW1lLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3dlYmF1ZGlv
L2F1ZGlvYnVmZmVyc291cmNlLWVuZGVkLWRldGFjaGVkLWZyYW1lLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi41MDU1OTcyYjhjYmJmODA0ZjAwZmI3OWM0NTQ4ODM4YTQzNWE3YmM0Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8vYXVkaW9idWZmZXJzb3VyY2UtZW5kZWQt
ZGV0YWNoZWQtZnJhbWUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsOSBAQAorVGVzdCB0aGF0IHdl
IGRvIG5vdCBjcmFzaCB3aGVuIHRyeWluZyB0byBmaXJlIGFuICdlbmRlZCcgZXZlbnQgYXQgYSBh
dWRpb2J1ZmZlcnNvdXJjZSBub2RlIGluIGEgZGV0YWNoZWQgZnJhbWUuCisKK09uIHN1Y2Nlc3Ms
IHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJU
RVNUIENPTVBMRVRFIi4KKworCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RF
U1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViYXVkaW8vYXVkaW9idWZm
ZXJzb3VyY2UtZW5kZWQtZGV0YWNoZWQtZnJhbWUuaHRtbCBiL0xheW91dFRlc3RzL3dlYmF1ZGlv
L2F1ZGlvYnVmZmVyc291cmNlLWVuZGVkLWRldGFjaGVkLWZyYW1lLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
OTAwNWE2MDI4MjhmMjYxMzMwYzJjNGE5YjAzM2FmMWI1ZTc1MjYxNAotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL3dlYmF1ZGlvL2F1ZGlvYnVmZmVyc291cmNlLWVuZGVkLWRldGFjaGVk
LWZyYW1lLmh0bWwKQEAgLTAsMCArMSwyNCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aGVhZD4KKyAg
ICA8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2pzLXRlc3QuanMiPjwvc2NyaXB0PgorICAgIDxz
Y3JpcHQ+CisgICAgICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQorICAgICAgICB7CisgICAgICAgICAg
ICBkZXNjcmlwdGlvbigiVGVzdCB0aGF0IHdlIGRvIG5vdCBjcmFzaCB3aGVuIHRyeWluZyB0byBm
aXJlIGFuICdlbmRlZCcgZXZlbnQgYXQgYSBhdWRpb2J1ZmZlcnNvdXJjZSBub2RlIGluIGEgZGV0
YWNoZWQgZnJhbWUuIik7CisgICAgICAgICAgICBqc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKKworICAg
ICAgICAgICAgZnJhbWUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKTsKKyAgICAg
ICAgICAgIGZyYW1lLnNyYyA9ICJyZXNvdXJjZXMvYXVkaW9idWZmZXJzb3VyY2UtZW5kZWQtZGV0
YWNoZWQtZnJhbWUtaWZyYW1lLmh0bWwiOworICAgICAgICAgICAgZnJhbWUub25sb2FkID0gZnVu
Y3Rpb24oKSB7CisgICAgICAgICAgICAgICAgZnJhbWUuY29udGVudFdpbmRvdy5ydW5UZXN0KCk7
CisgICAgICAgICAgICAgICAgZnJhbWUucmVtb3ZlKCk7CisgICAgICAgICAgICAgICAgc2V0VGlt
ZW91dChmdW5jdGlvbigpIHsKKyAgICAgICAgICAgICAgICAgICAgZmluaXNoSlNUZXN0KCk7Cisg
ICAgICAgICAgICAgICAgfSwgMTApOworICAgICAgICAgICAgfTsKKyAgICAgICAgICAgIGRvY3Vt
ZW50LmJvZHkuYXBwZW5kQ2hpbGQoZnJhbWUpOworICAgICAgICB9CisgICAgPC9zY3JpcHQ+Cis8
L2hlYWQ+Cis8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Cis8L2JvZHk+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy93ZWJhdWRpby9yZXNvdXJjZXMvYXVkaW9idWZmZXJzb3VyY2UtZW5kZWQtZGV0
YWNoZWQtZnJhbWUtaWZyYW1lLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9yZXNvdXJjZXMv
YXVkaW9idWZmZXJzb3VyY2UtZW5kZWQtZGV0YWNoZWQtZnJhbWUtaWZyYW1lLmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uNmU5M2E5OTE5ODk1OTU1NGM3YmY5YTM5NTVlOGVjNmRkMDg5NmJkZgotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL3dlYmF1ZGlvL3Jlc291cmNlcy9hdWRpb2J1ZmZlcnNvdXJj
ZS1lbmRlZC1kZXRhY2hlZC1mcmFtZS1pZnJhbWUuaHRtbApAQCAtMCwwICsxLDI2IEBACis8IURP
Q1RZUEUgaHRtbD4KKzxodG1sPgorPGJvZHk+Cis8c2NyaXB0IHNyYz0iYXVkaW8tdGVzdGluZy5q
cyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iYXVkaW9idWZmZXJzb3VyY2UtdGVzdGluZy5qcyI+
PC9zY3JpcHQ+Cis8c2NyaXB0PgorICAgIHZhciBjb250ZXh0OworICAgIHZhciBzb3VyY2U7CisK
KyAgICBmdW5jdGlvbiBydW5UZXN0KCkKKyAgICB7CisgICAgICAgIHZhciBzYW1wbGVSYXRlID0g
NDQxMDAuMDsKKyAgICAgICAgdmFyIG51bWJlck9mRnJhbWVzID0gMzI7CisgICAgICAgIGNvbnRl
eHQgPSBuZXcgd2Via2l0T2ZmbGluZUF1ZGlvQ29udGV4dCgxLCBudW1iZXJPZkZyYW1lcywgc2Ft
cGxlUmF0ZSk7CisgICAgICAgIHNvdXJjZSA9IGNvbnRleHQuY3JlYXRlQnVmZmVyU291cmNlKCk7
CisgICAgICAgIHNvdXJjZS5idWZmZXIgPSBjcmVhdGVUZXN0QnVmZmVyKGNvbnRleHQsIG51bWJl
ck9mRnJhbWVzKTsKKyAgICAgICAgc291cmNlLmNvbm5lY3QoY29udGV4dC5kZXN0aW5hdGlvbik7
CisgICAgICAgIHNvdXJjZS5vbmVuZGVkID0gZnVuY3Rpb24oKQorICAgICAgICB7CisgICAgICAg
IH0KKyAgICAgICAgc291cmNlLnN0YXJ0KDApOworICAgICAgICBjb250ZXh0LnN0YXJ0UmVuZGVy
aW5nKCk7CisgICAgfQorPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>334062</attachid>
            <date>2018-02-16 12:50:00 -0800</date>
            <delta_ts>2018-02-16 13:06:39 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-182880-20180216124959.patch</filename>
            <type>text/plain</type>
            <size>6317</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI4NTY4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTRiY2RlMGE4YTFlODhl
NTUzZWZlYTAzODMyNDE5MmI1ZTA4OGU3Ni4uYmE1YzFmZmU3NjVhZjE1MmI5ZTBmOGU2MjM4ZGM2
YzQ4MzExN2Y3ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE4LTAyLTE2ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQ3Jhc2ggdW5kZXIgV2ViQ29y
ZTo6RXZlbnRUYXJnZXQ6OmZpcmVFdmVudExpc3RlbmVycworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgyODgwCisgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS8yMDc4ODgwND4KKworICAgICAgICBSZXZpZXdlZCBieSBZb3Vlbm4gRmFibGV0LgorCisgICAg
ICAgIE1ha2Ugc3VyZSB0aGUgJ2VuZGVkJyBldmVudCBkb2VzIG5vdCBnZXQgZGlzcGF0Y2hlZCBv
biBhCisgICAgICAgIEF1ZGlvU2NoZWR1bGVkU291cmNlTm9kZSBhZnRlciBBY3RpdmVET01PYmpl
Y3RzIGhhdmUgYmVlbiBzdG9wcGVkLgorCisgICAgICAgIFRlc3Q6IHdlYmF1ZGlvL2F1ZGlvYnVm
ZmVyc291cmNlLWVuZGVkLWRldGFjaGVkLWZyYW1lLmh0bWwKKworICAgICAgICAqIE1vZHVsZXMv
d2ViYXVkaW8vQXVkaW9TY2hlZHVsZWRTb3VyY2VOb2RlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkF1ZGlvU2NoZWR1bGVkU291cmNlTm9kZTo6ZmluaXNoKToKKwogMjAxOC0wMi0xNiAgQ2hyaXMg
RHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIGZpeCBpT1Mg
YnVpbGQgYWZ0ZXIgcjIyODU2Mi4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
d2ViYXVkaW8vQXVkaW9TY2hlZHVsZWRTb3VyY2VOb2RlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvd2ViYXVkaW8vQXVkaW9TY2hlZHVsZWRTb3VyY2VOb2RlLmNwcAppbmRleCA4MDM2ZmQ5
ZmE5ZDk3M2IxZDVmNzBhNjQ3ZDMxMTBiMDIzMDY1MDYwLi43NGVkYWNhYWE5MDNkMmVhNThjZDIy
NzAzOTBkZDU5MmQzZmY4OTNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dl
YmF1ZGlvL0F1ZGlvU2NoZWR1bGVkU291cmNlTm9kZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy93ZWJhdWRpby9BdWRpb1NjaGVkdWxlZFNvdXJjZU5vZGUuY3BwCkBAIC0zMyw2ICsz
Myw3IEBACiAjaW5jbHVkZSAiRXZlbnQuaCIKICNpbmNsdWRlICJFdmVudE5hbWVzLmgiCiAjaW5j
bHVkZSAiU2NyaXB0Q29udHJvbGxlci5oIgorI2luY2x1ZGUgIlNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQuaCIKICNpbmNsdWRlIDxhbGdvcml0aG0+CiAjaW5jbHVkZSA8d3RmL01hdGhFeHRyYXMuaD4K
IApAQCAtMTY2LDExICsxNjcsMjAgQEAgdm9pZCBBdWRpb1NjaGVkdWxlZFNvdXJjZU5vZGU6OmZp
bmlzaCgpCiAgICAgICAgIGNvbnRleHQoKS5kZWNyZW1lbnRBY3RpdmVTb3VyY2VDb3VudCgpOwog
ICAgIH0KIAotICAgIGlmIChtX2hhc0VuZGVkTGlzdGVuZXIpIHsKLSAgICAgICAgY2FsbE9uTWFp
blRocmVhZChbcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpXSAoKSBtdXRhYmxlIHsKLSAg
ICAgICAgICAgIHByb3RlY3RlZFRoaXMtPmRpc3BhdGNoRXZlbnQoRXZlbnQ6OmNyZWF0ZShldmVu
dE5hbWVzKCkuZW5kZWRFdmVudCwgZmFsc2UsIGZhbHNlKSk7Ci0gICAgICAgIH0pOwotICAgIH0K
KyAgICBpZiAoIW1faGFzRW5kZWRMaXN0ZW5lcikKKyAgICAgICAgcmV0dXJuOworCisgICAgYXV0
byogc2NyaXB0RXhlY3V0aW9uQ29udGV4dCA9IHRoaXMtPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQo
KTsKKyAgICBpZiAoIXNjcmlwdEV4ZWN1dGlvbkNvbnRleHQpCisgICAgICAgIHJldHVybjsKKwor
ICAgIHNjcmlwdEV4ZWN1dGlvbkNvbnRleHQtPnBvc3RUYXNrKFt0aGlzLCBwcm90ZWN0ZWRUaGlz
ID0gbWFrZVJlZigqdGhpcyldIChhdXRvJikgeworICAgICAgICAvLyBNYWtlIHN1cmUgQWN0aXZl
RE9NT2JqZWN0cyBoYXZlIG5vdCBiZWVuIHN0b3BwZWQgYWZ0ZXIgc2NoZWR1bGluZyB0aGlzIHRh
c2suCisgICAgICAgIGlmICghdGhpcy0+c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpKQorICAgICAg
ICAgICAgcmV0dXJuOworCisgICAgICAgIHRoaXMtPmRpc3BhdGNoRXZlbnQoRXZlbnQ6OmNyZWF0
ZShldmVudE5hbWVzKCkuZW5kZWRFdmVudCwgZmFsc2UsIGZhbHNlKSk7CisgICAgfSk7CiB9CiAK
IGJvb2wgQXVkaW9TY2hlZHVsZWRTb3VyY2VOb2RlOjphZGRFdmVudExpc3RlbmVyKGNvbnN0IEF0
b21pY1N0cmluZyYgZXZlbnRUeXBlLCBSZWY8RXZlbnRMaXN0ZW5lcj4mJiBsaXN0ZW5lciwgY29u
c3QgQWRkRXZlbnRMaXN0ZW5lck9wdGlvbnMmIG9wdGlvbnMpCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZmU2NmE5YmFhYWRj
YWU3OWU0ODVjNjE5YzJjZjNlNGQzMzZjNzAwZC4uMGRjNzQ4ZmU0YTEyZTllZTZiNjZmOTZkNmFh
ZDcxN2FhZTRhNzA5NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xh
eW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDE4LTAyLTE2ICBDaHJpcyBE
dW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQ3Jhc2ggdW5kZXIgV2ViQ29yZTo6
RXZlbnRUYXJnZXQ6OmZpcmVFdmVudExpc3RlbmVycworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgyODgwCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8y
MDc4ODgwND4KKworICAgICAgICBSZXZpZXdlZCBieSBZb3Vlbm4gRmFibGV0LgorCisgICAgICAg
IEFkZCBsYXlvdXQgdGVzdCBjb3ZlcmFnZS4KKworICAgICAgICAqIHdlYmF1ZGlvL2F1ZGlvYnVm
ZmVyc291cmNlLWVuZGVkLWRldGFjaGVkLWZyYW1lLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAg
ICAgICogd2ViYXVkaW8vYXVkaW9idWZmZXJzb3VyY2UtZW5kZWQtZGV0YWNoZWQtZnJhbWUuaHRt
bDogQWRkZWQuCisgICAgICAgICogd2ViYXVkaW8vcmVzb3VyY2VzL2F1ZGlvYnVmZmVyc291cmNl
LWVuZGVkLWRldGFjaGVkLWZyYW1lLWlmcmFtZS5odG1sOiBBZGRlZC4KKwogMjAxOC0wMi0xNiAg
RnVqaWkgSGlyb25vcmkgIDxIaXJvbm9yaS5GdWppaUBzb255LmNvbT4KIAogICAgICAgICBmYXN0
L2ZyYW1lcy9zYW5kYm94ZWQtaWZyYW1lLW5hdmlnYXRpb24tdG9wLWRlbmllZC5odG1sIGlzIGNy
YXNoaW5nIGluIEluc3BlY3Rvcjo6Y3JlYXRlU2NyaXB0Q2FsbFN0YWNrRm9yQ29uc29sZTo6RXhl
YyBmb3IgR1RLCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJhdWRpby9hdWRpb2J1ZmZlcnNv
dXJjZS1lbmRlZC1kZXRhY2hlZC1mcmFtZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy93ZWJh
dWRpby9hdWRpb2J1ZmZlcnNvdXJjZS1lbmRlZC1kZXRhY2hlZC1mcmFtZS1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uNTA1NTk3MmI4Y2JiZjgwNGYwMGZiNzljNDU0ODgzOGE0MzVhN2JjNAotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3dlYmF1ZGlvL2F1ZGlvYnVmZmVyc291cmNlLWVu
ZGVkLWRldGFjaGVkLWZyYW1lLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDkgQEAKK1Rlc3QgdGhh
dCB3ZSBkbyBub3QgY3Jhc2ggd2hlbiB0cnlpbmcgdG8gZmlyZSBhbiAnZW5kZWQnIGV2ZW50IGF0
IGEgYXVkaW9idWZmZXJzb3VyY2Ugbm9kZSBpbiBhIGRldGFjaGVkIGZyYW1lLgorCitPbiBzdWNj
ZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBi
eSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQor
CitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmF1ZGlvL2F1ZGlv
YnVmZmVyc291cmNlLWVuZGVkLWRldGFjaGVkLWZyYW1lLmh0bWwgYi9MYXlvdXRUZXN0cy93ZWJh
dWRpby9hdWRpb2J1ZmZlcnNvdXJjZS1lbmRlZC1kZXRhY2hlZC1mcmFtZS5odG1sCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjkwMDVhNjAyODI4ZjI2MTMzMGMyYzRhOWIwMzNhZjFiNWU3NTI2MTQKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9hdWRpb2J1ZmZlcnNvdXJjZS1lbmRlZC1kZXRh
Y2hlZC1mcmFtZS5odG1sCkBAIC0wLDAgKzEsMjQgQEAKKzwhRE9DVFlQRSBodG1sPgorPGhlYWQ+
CisgICAgPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9qcy10ZXN0LmpzIj48L3NjcmlwdD4KKyAg
ICA8c2NyaXB0PgorICAgICAgICBmdW5jdGlvbiBydW5UZXN0KCkKKyAgICAgICAgeworICAgICAg
ICAgICAgZGVzY3JpcHRpb24oIlRlc3QgdGhhdCB3ZSBkbyBub3QgY3Jhc2ggd2hlbiB0cnlpbmcg
dG8gZmlyZSBhbiAnZW5kZWQnIGV2ZW50IGF0IGEgYXVkaW9idWZmZXJzb3VyY2Ugbm9kZSBpbiBh
IGRldGFjaGVkIGZyYW1lLiIpOworICAgICAgICAgICAganNUZXN0SXNBc3luYyA9IHRydWU7CisK
KyAgICAgICAgICAgIGZyYW1lID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7Cisg
ICAgICAgICAgICBmcmFtZS5zcmMgPSAicmVzb3VyY2VzL2F1ZGlvYnVmZmVyc291cmNlLWVuZGVk
LWRldGFjaGVkLWZyYW1lLWlmcmFtZS5odG1sIjsKKyAgICAgICAgICAgIGZyYW1lLm9ubG9hZCA9
IGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgICAgIGZyYW1lLmNvbnRlbnRXaW5kb3cucnVuVGVz
dCgpOworICAgICAgICAgICAgICAgIGZyYW1lLnJlbW92ZSgpOworICAgICAgICAgICAgICAgIHNl
dFRpbWVvdXQoZnVuY3Rpb24oKSB7CisgICAgICAgICAgICAgICAgICAgIGZpbmlzaEpTVGVzdCgp
OworICAgICAgICAgICAgICAgIH0sIDEwKTsKKyAgICAgICAgICAgIH07CisgICAgICAgICAgICBk
b2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGZyYW1lKTsKKyAgICAgICAgfQorICAgIDwvc2NyaXB0
PgorPC9oZWFkPgorPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgorPC9ib2R5PgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvd2ViYXVkaW8vcmVzb3VyY2VzL2F1ZGlvYnVmZmVyc291cmNlLWVuZGVk
LWRldGFjaGVkLWZyYW1lLWlmcmFtZS5odG1sIGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8vcmVzb3Vy
Y2VzL2F1ZGlvYnVmZmVyc291cmNlLWVuZGVkLWRldGFjaGVkLWZyYW1lLWlmcmFtZS5odG1sCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjZlOTNhOTkxOTg5NTk1NTRjN2JmOWEzOTU1ZThlYzZkZDA4OTZiZGYKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy93ZWJhdWRpby9yZXNvdXJjZXMvYXVkaW9idWZmZXJz
b3VyY2UtZW5kZWQtZGV0YWNoZWQtZnJhbWUtaWZyYW1lLmh0bWwKQEAgLTAsMCArMSwyNiBAQAor
PCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxib2R5PgorPHNjcmlwdCBzcmM9ImF1ZGlvLXRlc3Rp
bmcuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9ImF1ZGlvYnVmZmVyc291cmNlLXRlc3Rpbmcu
anMiPjwvc2NyaXB0PgorPHNjcmlwdD4KKyAgICB2YXIgY29udGV4dDsKKyAgICB2YXIgc291cmNl
OworCisgICAgZnVuY3Rpb24gcnVuVGVzdCgpCisgICAgeworICAgICAgICB2YXIgc2FtcGxlUmF0
ZSA9IDQ0MTAwLjA7CisgICAgICAgIHZhciBudW1iZXJPZkZyYW1lcyA9IDMyOworICAgICAgICBj
b250ZXh0ID0gbmV3IHdlYmtpdE9mZmxpbmVBdWRpb0NvbnRleHQoMSwgbnVtYmVyT2ZGcmFtZXMs
IHNhbXBsZVJhdGUpOworICAgICAgICBzb3VyY2UgPSBjb250ZXh0LmNyZWF0ZUJ1ZmZlclNvdXJj
ZSgpOworICAgICAgICBzb3VyY2UuYnVmZmVyID0gY3JlYXRlVGVzdEJ1ZmZlcihjb250ZXh0LCBu
dW1iZXJPZkZyYW1lcyk7CisgICAgICAgIHNvdXJjZS5jb25uZWN0KGNvbnRleHQuZGVzdGluYXRp
b24pOworICAgICAgICBzb3VyY2Uub25lbmRlZCA9IGZ1bmN0aW9uKCkKKyAgICAgICAgeworICAg
ICAgICB9CisgICAgICAgIHNvdXJjZS5zdGFydCgwKTsKKyAgICAgICAgY29udGV4dC5zdGFydFJl
bmRlcmluZygpOworICAgIH0KKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>