<?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>220776</bug_id>
          
          <creation_ts>2021-01-20 11:34:39 -0800</creation_ts>
          <short_desc>Fix nullptr dereference introduced in r268228</short_desc>
          <delta_ts>2021-04-27 14:38:01 -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>New Bugs</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="Alex Christensen">achristensen</reporter>
          <assigned_to name="Alex Christensen">achristensen</assigned_to>
          <cc>bugmail</cc>
    
    <cc>cdumez</cc>
    
    <cc>feross</cc>
    
    <cc>jhiesey</cc>
    
    <cc>lwarlow</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1720943</commentid>
    <comment_count>0</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-01-20 11:34:39 -0800</bug_when>
    <thetext>Fix nullptr dereference introduced in r268228</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1720945</commentid>
    <comment_count>1</comment_count>
      <attachid>417983</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-01-20 11:36:50 -0800</bug_when>
    <thetext>Created attachment 417983
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1720948</commentid>
    <comment_count>2</comment_count>
      <attachid>417983</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-01-20 11:40:49 -0800</bug_when>
    <thetext>Comment on attachment 417983
Patch

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

&gt; Source/WebCore/fileapi/Blob.cpp:274
&gt; +            if (bytesLoaded == m_loader-&gt;totalBytes()&amp;&amp; !m_bytesRead)

nit: missing space before &amp;&amp;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1720949</commentid>
    <comment_count>3</comment_count>
      <attachid>417983</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-01-20 11:42:11 -0800</bug_when>
    <thetext>Comment on attachment 417983
Patch

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

&gt;&gt; Source/WebCore/fileapi/Blob.cpp:274
&gt;&gt; +            if (bytesLoaded == m_loader-&gt;totalBytes()&amp;&amp; !m_bytesRead)
&gt; 
&gt; nit: missing space before &amp;&amp;

Also may want to use FileReaderLoader::isCompleted() for clarity.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1720950</commentid>
    <comment_count>4</comment_count>
      <attachid>417984</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-01-20 11:44:33 -0800</bug_when>
    <thetext>Created attachment 417984
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1720974</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-01-20 13:10:00 -0800</bug_when>
    <thetext>Committed r271669: &lt;https://trac.webkit.org/changeset/271669&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 417984.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1720975</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-01-20 13:10:15 -0800</bug_when>
    <thetext>&lt;rdar://problem/73417187&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1721053</commentid>
    <comment_count>7</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-01-20 17:26:48 -0800</bug_when>
    <thetext>This was rdar://problem/71627170</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1754473</commentid>
    <comment_count>8</comment_count>
    <who name="John Hiesey">jhiesey</who>
    <bug_when>2021-04-26 19:08:32 -0700</bug_when>
    <thetext>It is unfortunate that Safari 14.1 shipped with Blob.stream() but without this fix.

Our web app, wormhole.app, uses feature detection to determine if Blob.stream() is available, so it broke when Safari 14.1 was released. We had to quickly add a patch to disable using Blob.stream() in Safari, since it would immediately crash the renderer process.

If the feature was known to be buggy, I wish it hadn&apos;t shipped, or that the fix had been applied before shipping it.

We did test in Safari Technology Preview, but it already had this fix applied so we didn&apos;t encounter the crash.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1754730</commentid>
    <comment_count>9</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-04-27 11:55:29 -0700</bug_when>
    <thetext>(In reply to John Hiesey from comment #8)
&gt; It is unfortunate that Safari 14.1 shipped with Blob.stream() but without
&gt; this fix.
&gt; 
&gt; Our web app, wormhole.app, uses feature detection to determine if
&gt; Blob.stream() is available, so it broke when Safari 14.1 was released. We
&gt; had to quickly add a patch to disable using Blob.stream() in Safari, since
&gt; it would immediately crash the renderer process.
&gt; 
&gt; If the feature was known to be buggy, I wish it hadn&apos;t shipped, or that the
&gt; fix had been applied before shipping it.
&gt; 
&gt; We did test in Safari Technology Preview, but it already had this fix
&gt; applied so we didn&apos;t encounter the crash.

Thanks for bringing this to our attention. We&apos;ll look into what happened.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>417983</attachid>
            <date>2021-01-20 11:36:50 -0800</date>
            <delta_ts>2021-01-20 11:44:31 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-220776-20210120113649.patch</filename>
            <type>text/plain</type>
            <size>5962</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI3MTY2MSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIzIEBACisyMDIxLTAxLTIwICBBbGV4IENo
cmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgRml4IG51bGxw
dHIgZGVyZWZlcmVuY2UgaW50cm9kdWNlZCBpbiByMjY4MjI4CisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjA3NzYKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbnN0ZWFkIG9mIHRha2luZyBkYXRhIGZyb20g
dGhlIEZpbGVSZWFkZXJMb2FkZXIsIHdoaWNoIGl0IGFzc3VtZXMgaXQgc3RpbGwgaGFzIGxhdGVy
LAorICAgICAgICBvbmx5IGdpdmUgdGhlIGJ5dGVzIHRvIEphdmFTY3JpcHQgdGhhdCBoYXZlIGJl
ZW4gcmVjZWl2ZWQgc2luY2UgbGFzdCB0aW1lIHdlIGNhbGxlZCBkaWRSZWNlaXZlRGF0YS4KKyAg
ICAgICAgVGhpcyBtYWtlcyBibG9iLnN0cmVhbSBjb3JyZWN0IGFuZCBub3QgY3Jhc2guCisKKyAg
ICAgICAgVGVzdDogZmFzdC9maWxlcy9ibG9iLXN0cmVhbS1jcmFzaC0yLmh0bWwKKworICAgICAg
ICAqIGZpbGVhcGkvQmxvYi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpCbG9iOjpzdHJlYW0pOgor
ICAgICAgICAqIGZpbGVhcGkvRmlsZVJlYWRlckxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpGaWxlUmVhZGVyTG9hZGVyOjp0YWtlUmF3RGF0YSk6IERlbGV0ZWQuCisgICAgICAgICogZmls
ZWFwaS9GaWxlUmVhZGVyTG9hZGVyLmg6CisgICAgICAgIChXZWJDb3JlOjpGaWxlUmVhZGVyTG9h
ZGVyOjp0b3RhbEJ5dGVzIGNvbnN0KToKKwogMjAyMS0wMS0yMCAgTWFydGluIFJvYmluc29uICA8
bXJvYmluc29uQGlnYWxpYS5jb20+CiAKICAgICAgICAgVXNlIFNjcm9sbFNuYXBPZmZzZXRzSW5m
byBpbiBTY3JvbGxTbmFwQW5pbWF0b3JTdGF0ZQpJbmRleDogU291cmNlL1dlYkNvcmUvZmlsZWFw
aS9CbG9iLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9maWxlYXBpL0Jsb2IuY3Bw
CShyZXZpc2lvbiAyNzE0MTApCisrKyBTb3VyY2UvV2ViQ29yZS9maWxlYXBpL0Jsb2IuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0yNjYsNyArMjY2LDE3IEBAIEV4Y2VwdGlvbk9yPFJlZjxSZWFkYWJs
ZVN0cmVhbT4+IEJsb2I6OnMKICAgICAgICAgdm9pZCBkaWRTdGFydExvYWRpbmcoKSBmaW5hbCB7
IH0KICAgICAgICAgdm9pZCBkaWRSZWNlaXZlRGF0YSgpIGZpbmFsCiAgICAgICAgIHsKLSAgICAg
ICAgICAgIGNvbnRyb2xsZXIoKS5lbnF1ZXVlKG1fbG9hZGVyLT50YWtlUmF3RGF0YSgpKTsKKyAg
ICAgICAgICAgIGF1dG8gcmVzdWx0ID0gbV9sb2FkZXItPmFycmF5QnVmZmVyUmVzdWx0KCk7Cisg
ICAgICAgICAgICBpZiAoIXJlc3VsdCkKKyAgICAgICAgICAgICAgICByZXR1cm47CisgICAgICAg
ICAgICAKKyAgICAgICAgICAgIHVuc2lnbmVkIGJ5dGVzTG9hZGVkID0gbV9sb2FkZXItPmJ5dGVz
TG9hZGVkKCk7CisgICAgICAgICAgICBpZiAoYnl0ZXNMb2FkZWQgPT0gbV9sb2FkZXItPnRvdGFs
Qnl0ZXMoKSYmICFtX2J5dGVzUmVhZCkKKyAgICAgICAgICAgICAgICBjb250cm9sbGVyKCkuZW5x
dWV1ZShXVEZNb3ZlKHJlc3VsdCkpOworICAgICAgICAgICAgZWxzZSB7CisgICAgICAgICAgICAg
ICAgY29udHJvbGxlcigpLmVucXVldWUocmVzdWx0LT5zbGljZShtX2J5dGVzUmVhZCwgYnl0ZXNM
b2FkZWQpKTsKKyAgICAgICAgICAgICAgICBtX2J5dGVzUmVhZCA9IGJ5dGVzTG9hZGVkOworICAg
ICAgICAgICAgfQogICAgICAgICB9CiAgICAgICAgIHZvaWQgZGlkRmluaXNoTG9hZGluZygpIGZp
bmFsCiAgICAgICAgIHsKQEAgLTI3OCw2ICsyODgsNyBAQCBFeGNlcHRpb25PcjxSZWY8UmVhZGFi
bGVTdHJlYW0+PiBCbG9iOjpzCiAgICAgICAgIH0KIAogICAgICAgICBVbmlxdWVSZWY8RmlsZVJl
YWRlckxvYWRlcj4gbV9sb2FkZXI7CisgICAgICAgIHNpemVfdCBtX2J5dGVzUmVhZCB7IDAgfTsK
ICAgICB9OwogCiAgICAgYXV0byogZ2xvYmFsT2JqZWN0ID0gc2NyaXB0RXhlY3V0aW9uQ29udGV4
dC5nbG9iYWxPYmplY3QoKTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZVJlYWRl
ckxvYWRlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlUmVh
ZGVyTG9hZGVyLmNwcAkocmV2aXNpb24gMjcxNDEwKQorKysgU291cmNlL1dlYkNvcmUvZmlsZWFw
aS9GaWxlUmVhZGVyTG9hZGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjc5LDExICsyNzksNiBA
QCBSZWZQdHI8QXJyYXlCdWZmZXI+IEZpbGVSZWFkZXJMb2FkZXI6OmFyCiAgICAgcmV0dXJuIEFy
cmF5QnVmZmVyOjpjcmVhdGUoKm1fcmF3RGF0YSk7CiB9CiAKLVJlZlB0cjxKU0M6OkFycmF5QnVm
ZmVyPiBGaWxlUmVhZGVyTG9hZGVyOjp0YWtlUmF3RGF0YSgpCi17Ci0gICAgcmV0dXJuIHN0ZDo6
ZXhjaGFuZ2UobV9yYXdEYXRhLCBudWxscHRyKTsKLX0KLQogU3RyaW5nIEZpbGVSZWFkZXJMb2Fk
ZXI6OnN0cmluZ1Jlc3VsdCgpCiB7CiAgICAgQVNTRVJUKG1fcmVhZFR5cGUgIT0gUmVhZEFzQXJy
YXlCdWZmZXIgJiYgbV9yZWFkVHlwZSAhPSBSZWFkQXNCbG9iKTsKSW5kZXg6IFNvdXJjZS9XZWJD
b3JlL2ZpbGVhcGkvRmlsZVJlYWRlckxvYWRlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL2ZpbGVhcGkvRmlsZVJlYWRlckxvYWRlci5oCShyZXZpc2lvbiAyNzE0MTApCisrKyBTb3Vy
Y2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXJMb2FkZXIuaAkod29ya2luZyBjb3B5KQpAQCAt
NzksNyArNzksNiBAQCBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgUmVmUHRyPEpTQzo6QXJy
YXlCdWZmZXI+IGFycmF5QnVmZmVyUmVzdWx0KCkgY29uc3Q7CiAgICAgdW5zaWduZWQgYnl0ZXNM
b2FkZWQoKSBjb25zdCB7IHJldHVybiBtX2J5dGVzTG9hZGVkOyB9CiAgICAgdW5zaWduZWQgdG90
YWxCeXRlcygpIGNvbnN0IHsgcmV0dXJuIG1fdG90YWxCeXRlczsgfQotICAgIFJlZlB0cjxKU0M6
OkFycmF5QnVmZmVyPiB0YWtlUmF3RGF0YSgpOwogICAgIE9wdGlvbmFsPEV4Y2VwdGlvbkNvZGU+
IGVycm9yQ29kZSgpIGNvbnN0IHsgcmV0dXJuIG1fZXJyb3JDb2RlOyB9CiAKICAgICB2b2lkIHNl
dEVuY29kaW5nKGNvbnN0IFN0cmluZyYpOwpJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gMjcxNDEwKQorKysg
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTMgQEAKKzIw
MjEtMDEtMjAgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKwor
ICAgICAgICBGaXggbnVsbHB0ciBkZXJlZmVyZW5jZSBpbnRyb2R1Y2VkIGluIHIyNjgyMjgKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMDc3NgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogZmFzdC9maWxl
cy9ibG9iLXN0cmVhbS1jcmFzaC0yLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFz
dC9maWxlcy9ibG9iLXN0cmVhbS1jcmFzaC0yLmh0bWw6IEFkZGVkLgorCiAyMDIxLTAxLTEyICBQ
ZW5nIExpdSAgPHBlbmcubGl1NkBhcHBsZS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lPTiAocjI3
MTM0MSk6IG1lZGlhL21vZGVybi1tZWRpYS1jb250cm9scy9tZWRpYS1jb250cm9sbGVyL21lZGlh
LWNvbnRyb2xsZXItaW5saW5lLXRvLWZ1bGxzY3JlZW4tdG8taW5saW5lLmh0bWwgaXMgdGltaW5n
IG91dApJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9maWxlcy9ibG9iLXN0cmVhbS1jcmFzaC0yLWV4
cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2ZpbGVzL2Jsb2Itc3Ry
ZWFtLWNyYXNoLTItZXhwZWN0ZWQudHh0CShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2Zh
c3QvZmlsZXMvYmxvYi1zdHJlYW0tY3Jhc2gtMi1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkK
QEAgLTAsMCArMSw1IEBACitBTEVSVDogUkVDRUlWRUQgQllURSAnYScKK0FMRVJUOiBSRUNFSVZF
RCBCWVRFICdiJworQUxFUlQ6IFJFQ0VJVkVEIEJZVEUgJ2MnCitBTEVSVDogUkVDRUlWRUQgQllU
RSAnZCcKKwpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9maWxlcy9ibG9iLXN0cmVhbS1jcmFzaC0y
Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9maWxlcy9ibG9iLXN0cmVhbS1j
cmFzaC0yLmh0bWwJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvZmFzdC9maWxlcy9ibG9i
LXN0cmVhbS1jcmFzaC0yLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw0MiBAQAorPHNj
cmlwdD4KKworICAgIHZhciBieXRlc1JlYWQgPSAwOworCisgICAgZnVuY3Rpb24gcmVjdXJzaXZl
UmVhZChyZWFkZXIpIHsKKyAgICAgICAgcmVhZGVyLnJlYWQoKS50aGVuKGZ1bmN0aW9uKHsgZG9u
ZSwgdmFsdWUgfSkgeworICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCB2YWx1ZS5sZW5n
dGg7IGkrKykgeworICAgICAgICAgICAgICAgIGFsZXJ0KCJSRUNFSVZFRCBCWVRFICciICsgU3Ry
aW5nLmZyb21DaGFyQ29kZSh2YWx1ZVtpXSkgKyAiJyIpOworICAgICAgICAgICAgICAgIGJ5dGVz
UmVhZCA9IGJ5dGVzUmVhZCArIDE7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBpZiAoYnl0
ZXNSZWFkID09IDQpIHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsK
KyAgICAgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7CisgICAgICAgICAg
ICAgICAgfQorICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICByZWN1cnNpdmVS
ZWFkKHJlYWRlcik7CisgICAgICAgICAgICB9CisgICAgICAgIH0pOworICAgIH0KKyAgICAKKyAg
ICBmdW5jdGlvbiBydW5UZXN0KCkgeworICAgICAgICBsZXQgZmlsZUJpdHMgPSBbCisgICAgICAg
ICAgICAnYScsCisgICAgICAgICAgICBuZXcgRmlsZShbXSwgJ3gnKSwKKyAgICAgICAgICAgICdi
JywKKyAgICAgICAgICAgIG5ldyBGaWxlKFtdLCAneCcpLAorICAgICAgICAgICAgJ2MnLAorICAg
ICAgICAgICAgbmV3IEZpbGUoW10sICd4JyksCisgICAgICAgICAgICAnZCcKKyAgICAgICAgXTsK
KyAgICAgICAgbGV0IGZpbGUgPSBuZXcgRmlsZShmaWxlQml0cywgJ3knKTsKKyAgICAgICAgcmVj
dXJzaXZlUmVhZChmaWxlLnN0cmVhbSgpLmdldFJlYWRlcigpKTsKKyAgICB9CisKKyAgICBpZiAo
d2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Cisg
ICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworICAgIH0KKworPC9zY3JpcHQ+Cis8
Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Cis8L2JvZHk+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>417984</attachid>
            <date>2021-01-20 11:44:33 -0800</date>
            <delta_ts>2021-01-20 14:25:39 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-220776-20210120114432.patch</filename>
            <type>text/plain</type>
            <size>6343</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI3MTY2MSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIzIEBACisyMDIxLTAxLTIwICBBbGV4IENo
cmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgRml4IG51bGxw
dHIgZGVyZWZlcmVuY2UgaW50cm9kdWNlZCBpbiByMjY4MjI4CisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjA3NzYKKworICAgICAgICBSZXZpZXdlZCBi
eSBDaHJpcyBEdW1lei4KKworICAgICAgICBJbnN0ZWFkIG9mIHRha2luZyBkYXRhIGZyb20gdGhl
IEZpbGVSZWFkZXJMb2FkZXIsIHdoaWNoIGl0IGFzc3VtZXMgaXQgc3RpbGwgaGFzIGxhdGVyLAor
ICAgICAgICBvbmx5IGdpdmUgdGhlIGJ5dGVzIHRvIEphdmFTY3JpcHQgdGhhdCBoYXZlIGJlZW4g
cmVjZWl2ZWQgc2luY2UgbGFzdCB0aW1lIHdlIGNhbGxlZCBkaWRSZWNlaXZlRGF0YS4KKyAgICAg
ICAgVGhpcyBtYWtlcyBibG9iLnN0cmVhbSBjb3JyZWN0IGFuZCBub3QgY3Jhc2guCisKKyAgICAg
ICAgVGVzdDogZmFzdC9maWxlcy9ibG9iLXN0cmVhbS1jcmFzaC0yLmh0bWwKKworICAgICAgICAq
IGZpbGVhcGkvQmxvYi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpCbG9iOjpzdHJlYW0pOgorICAg
ICAgICAqIGZpbGVhcGkvRmlsZVJlYWRlckxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpG
aWxlUmVhZGVyTG9hZGVyOjp0YWtlUmF3RGF0YSk6IERlbGV0ZWQuCisgICAgICAgICogZmlsZWFw
aS9GaWxlUmVhZGVyTG9hZGVyLmg6CisgICAgICAgIChXZWJDb3JlOjpGaWxlUmVhZGVyTG9hZGVy
Ojp0b3RhbEJ5dGVzIGNvbnN0KToKKwogMjAyMS0wMS0yMCAgTWFydGluIFJvYmluc29uICA8bXJv
Ymluc29uQGlnYWxpYS5jb20+CiAKICAgICAgICAgVXNlIFNjcm9sbFNuYXBPZmZzZXRzSW5mbyBp
biBTY3JvbGxTbmFwQW5pbWF0b3JTdGF0ZQpJbmRleDogU291cmNlL1dlYkNvcmUvZmlsZWFwaS9C
bG9iLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9maWxlYXBpL0Jsb2IuY3BwCShy
ZXZpc2lvbiAyNzE0MTApCisrKyBTb3VyY2UvV2ViQ29yZS9maWxlYXBpL0Jsb2IuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNjYsNyArMjY2LDE3IEBAIEV4Y2VwdGlvbk9yPFJlZjxSZWFkYWJsZVN0
cmVhbT4+IEJsb2I6OnMKICAgICAgICAgdm9pZCBkaWRTdGFydExvYWRpbmcoKSBmaW5hbCB7IH0K
ICAgICAgICAgdm9pZCBkaWRSZWNlaXZlRGF0YSgpIGZpbmFsCiAgICAgICAgIHsKLSAgICAgICAg
ICAgIGNvbnRyb2xsZXIoKS5lbnF1ZXVlKG1fbG9hZGVyLT50YWtlUmF3RGF0YSgpKTsKKyAgICAg
ICAgICAgIGF1dG8gcmVzdWx0ID0gbV9sb2FkZXItPmFycmF5QnVmZmVyUmVzdWx0KCk7CisgICAg
ICAgICAgICBpZiAoIXJlc3VsdCkKKyAgICAgICAgICAgICAgICByZXR1cm47CisKKyAgICAgICAg
ICAgIGlmIChtX2xvYWRlci0+aXNDb21wbGV0ZWQoKSAmJiAhbV9ieXRlc1JlYWQpCisgICAgICAg
ICAgICAgICAgY29udHJvbGxlcigpLmVucXVldWUoV1RGTW92ZShyZXN1bHQpKTsKKyAgICAgICAg
ICAgIGVsc2UgeworICAgICAgICAgICAgICAgIGF1dG8gYnl0ZXNMb2FkZWQgPSBtX2xvYWRlci0+
Ynl0ZXNMb2FkZWQoKTsKKyAgICAgICAgICAgICAgICBjb250cm9sbGVyKCkuZW5xdWV1ZShyZXN1
bHQtPnNsaWNlKG1fYnl0ZXNSZWFkLCBieXRlc0xvYWRlZCkpOworICAgICAgICAgICAgICAgIG1f
Ynl0ZXNSZWFkID0gYnl0ZXNMb2FkZWQ7CisgICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICAg
ICAgdm9pZCBkaWRGaW5pc2hMb2FkaW5nKCkgZmluYWwKICAgICAgICAgewpAQCAtMjc4LDYgKzI4
OCw3IEBAIEV4Y2VwdGlvbk9yPFJlZjxSZWFkYWJsZVN0cmVhbT4+IEJsb2I6OnMKICAgICAgICAg
fQogCiAgICAgICAgIFVuaXF1ZVJlZjxGaWxlUmVhZGVyTG9hZGVyPiBtX2xvYWRlcjsKKyAgICAg
ICAgc2l6ZV90IG1fYnl0ZXNSZWFkIHsgMCB9OwogICAgIH07CiAKICAgICBhdXRvKiBnbG9iYWxP
YmplY3QgPSBzY3JpcHRFeGVjdXRpb25Db250ZXh0Lmdsb2JhbE9iamVjdCgpOwpJbmRleDogU291
cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlUmVhZGVyTG9hZGVyLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXJMb2FkZXIuY3BwCShyZXZpc2lvbiAyNzE0
MTApCisrKyBTb3VyY2UvV2ViQ29yZS9maWxlYXBpL0ZpbGVSZWFkZXJMb2FkZXIuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNzksMTEgKzI3OSw2IEBAIFJlZlB0cjxBcnJheUJ1ZmZlcj4gRmlsZVJl
YWRlckxvYWRlcjo6YXIKICAgICByZXR1cm4gQXJyYXlCdWZmZXI6OmNyZWF0ZSgqbV9yYXdEYXRh
KTsKIH0KIAotUmVmUHRyPEpTQzo6QXJyYXlCdWZmZXI+IEZpbGVSZWFkZXJMb2FkZXI6OnRha2VS
YXdEYXRhKCkKLXsKLSAgICByZXR1cm4gc3RkOjpleGNoYW5nZShtX3Jhd0RhdGEsIG51bGxwdHIp
OwotfQotCiBTdHJpbmcgRmlsZVJlYWRlckxvYWRlcjo6c3RyaW5nUmVzdWx0KCkKIHsKICAgICBB
U1NFUlQobV9yZWFkVHlwZSAhPSBSZWFkQXNBcnJheUJ1ZmZlciAmJiBtX3JlYWRUeXBlICE9IFJl
YWRBc0Jsb2IpOwpJbmRleDogU291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlUmVhZGVyTG9hZGVy
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvZmlsZWFwaS9GaWxlUmVhZGVyTG9hZGVy
LmgJKHJldmlzaW9uIDI3MTQxMCkKKysrIFNvdXJjZS9XZWJDb3JlL2ZpbGVhcGkvRmlsZVJlYWRl
ckxvYWRlci5oCSh3b3JraW5nIGNvcHkpCkBAIC03OSw3ICs3OSw2IEBAIHB1YmxpYzoKICAgICBX
RUJDT1JFX0VYUE9SVCBSZWZQdHI8SlNDOjpBcnJheUJ1ZmZlcj4gYXJyYXlCdWZmZXJSZXN1bHQo
KSBjb25zdDsKICAgICB1bnNpZ25lZCBieXRlc0xvYWRlZCgpIGNvbnN0IHsgcmV0dXJuIG1fYnl0
ZXNMb2FkZWQ7IH0KICAgICB1bnNpZ25lZCB0b3RhbEJ5dGVzKCkgY29uc3QgeyByZXR1cm4gbV90
b3RhbEJ5dGVzOyB9Ci0gICAgUmVmUHRyPEpTQzo6QXJyYXlCdWZmZXI+IHRha2VSYXdEYXRhKCk7
CiAgICAgT3B0aW9uYWw8RXhjZXB0aW9uQ29kZT4gZXJyb3JDb2RlKCkgY29uc3QgeyByZXR1cm4g
bV9lcnJvckNvZGU7IH0KIAogICAgIHZvaWQgc2V0RW5jb2RpbmcoY29uc3QgU3RyaW5nJik7CkBA
IC04Nyw2ICs4Niw4IEBAIHB1YmxpYzoKIAogICAgIGNvbnN0IFVSTCYgdXJsKCkgeyByZXR1cm4g
bV91cmxGb3JSZWFkaW5nOyB9CiAKKyAgICBib29sIGlzQ29tcGxldGVkKCkgY29uc3Q7CisKIHBy
aXZhdGU6CiAgICAgdm9pZCB0ZXJtaW5hdGUoKTsKICAgICB2b2lkIGNsZWFudXAoKTsKQEAgLTk0
LDggKzk1LDYgQEAgcHJpdmF0ZToKICAgICB2b2lkIGNvbnZlcnRUb1RleHQoKTsKICAgICB2b2lk
IGNvbnZlcnRUb0RhdGFVUkwoKTsKIAotICAgIGJvb2wgaXNDb21wbGV0ZWQoKSBjb25zdDsKLQog
ICAgIHN0YXRpYyBFeGNlcHRpb25Db2RlIGh0dHBTdGF0dXNDb2RlVG9FcnJvckNvZGUoaW50KTsK
ICAgICBzdGF0aWMgRXhjZXB0aW9uQ29kZSB0b0Vycm9yQ29kZShCbG9iUmVzb3VyY2VIYW5kbGU6
OkVycm9yKTsKIApJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gMjcxNDEwKQorKysgTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTMgQEAKKzIwMjEtMDEtMjAgIEFsZXgg
Q2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKworICAgICAgICBGaXggbnVs
bHB0ciBkZXJlZmVyZW5jZSBpbnRyb2R1Y2VkIGluIHIyNjgyMjgKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMDc3NgorCisgICAgICAgIFJldmlld2Vk
IGJ5IENocmlzIER1bWV6LgorCisgICAgICAgICogZmFzdC9maWxlcy9ibG9iLXN0cmVhbS1jcmFz
aC0yLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9maWxlcy9ibG9iLXN0cmVh
bS1jcmFzaC0yLmh0bWw6IEFkZGVkLgorCiAyMDIxLTAxLTEyICBQZW5nIExpdSAgPHBlbmcubGl1
NkBhcHBsZS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lPTiAocjI3MTM0MSk6IG1lZGlhL21vZGVy
bi1tZWRpYS1jb250cm9scy9tZWRpYS1jb250cm9sbGVyL21lZGlhLWNvbnRyb2xsZXItaW5saW5l
LXRvLWZ1bGxzY3JlZW4tdG8taW5saW5lLmh0bWwgaXMgdGltaW5nIG91dApJbmRleDogTGF5b3V0
VGVzdHMvZmFzdC9maWxlcy9ibG9iLXN0cmVhbS1jcmFzaC0yLWV4cGVjdGVkLnR4dAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2ZpbGVzL2Jsb2Itc3RyZWFtLWNyYXNoLTItZXhwZWN0
ZWQudHh0CShub25leGlzdGVudCkKKysrIExheW91dFRlc3RzL2Zhc3QvZmlsZXMvYmxvYi1zdHJl
YW0tY3Jhc2gtMi1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw1IEBACitB
TEVSVDogUkVDRUlWRUQgQllURSAnYScKK0FMRVJUOiBSRUNFSVZFRCBCWVRFICdiJworQUxFUlQ6
IFJFQ0VJVkVEIEJZVEUgJ2MnCitBTEVSVDogUkVDRUlWRUQgQllURSAnZCcKKwpJbmRleDogTGF5
b3V0VGVzdHMvZmFzdC9maWxlcy9ibG9iLXN0cmVhbS1jcmFzaC0yLmh0bWwKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvZmFzdC9maWxlcy9ibG9iLXN0cmVhbS1jcmFzaC0yLmh0bWwJKG5vbmV4
aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvZmFzdC9maWxlcy9ibG9iLXN0cmVhbS1jcmFzaC0yLmh0
bWwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw0MiBAQAorPHNjcmlwdD4KKworICAgIHZhciBi
eXRlc1JlYWQgPSAwOworCisgICAgZnVuY3Rpb24gcmVjdXJzaXZlUmVhZChyZWFkZXIpIHsKKyAg
ICAgICAgcmVhZGVyLnJlYWQoKS50aGVuKGZ1bmN0aW9uKHsgZG9uZSwgdmFsdWUgfSkgeworICAg
ICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCB2YWx1ZS5sZW5ndGg7IGkrKykgeworICAgICAg
ICAgICAgICAgIGFsZXJ0KCJSRUNFSVZFRCBCWVRFICciICsgU3RyaW5nLmZyb21DaGFyQ29kZSh2
YWx1ZVtpXSkgKyAiJyIpOworICAgICAgICAgICAgICAgIGJ5dGVzUmVhZCA9IGJ5dGVzUmVhZCAr
IDE7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBpZiAoYnl0ZXNSZWFkID09IDQpIHsKKyAg
ICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICAgICAgICAgICAgICAg
ICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICByZWN1cnNpdmVSZWFkKHJlYWRlcik7CisgICAg
ICAgICAgICB9CisgICAgICAgIH0pOworICAgIH0KKyAgICAKKyAgICBmdW5jdGlvbiBydW5UZXN0
KCkgeworICAgICAgICBsZXQgZmlsZUJpdHMgPSBbCisgICAgICAgICAgICAnYScsCisgICAgICAg
ICAgICBuZXcgRmlsZShbXSwgJ3gnKSwKKyAgICAgICAgICAgICdiJywKKyAgICAgICAgICAgIG5l
dyBGaWxlKFtdLCAneCcpLAorICAgICAgICAgICAgJ2MnLAorICAgICAgICAgICAgbmV3IEZpbGUo
W10sICd4JyksCisgICAgICAgICAgICAnZCcKKyAgICAgICAgXTsKKyAgICAgICAgbGV0IGZpbGUg
PSBuZXcgRmlsZShmaWxlQml0cywgJ3knKTsKKyAgICAgICAgcmVjdXJzaXZlUmVhZChmaWxlLnN0
cmVhbSgpLmdldFJlYWRlcigpKTsKKyAgICB9CisKKyAgICBpZiAod2luZG93LnRlc3RSdW5uZXIp
IHsKKyAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgICAgIHRlc3RSdW5uZXIu
d2FpdFVudGlsRG9uZSgpOworICAgIH0KKworPC9zY3JpcHQ+Cis8Ym9keSBvbmxvYWQ9InJ1blRl
c3QoKSI+Cis8L2JvZHk+Cg==
</data>
<flag name="commit-queue"
          id="435826"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
      

    </bug>

</bugzilla>