<?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>211914</bug_id>
          
          <creation_ts>2020-05-14 12:20:37 -0700</creation_ts>
          <short_desc>Undecided Arrays shouldn&apos;t need to be OriginalArray to covert to GetArrayLength</short_desc>
          <delta_ts>2022-02-28 03:34:51 -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>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="Keith Miller">keith_miller</reporter>
          <assigned_to name="Keith Miller">keith_miller</assigned_to>
          <cc>ews-watchlist</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>myoki.crystal</cc>
    
    <cc>saam</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1652740</commentid>
    <comment_count>0</comment_count>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2020-05-14 12:20:37 -0700</bug_when>
    <thetext>Undecided Arrays shouldn&apos;t need to be OriginalArray to covert to GetArrayLength</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1652741</commentid>
    <comment_count>1</comment_count>
      <attachid>399390</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2020-05-14 12:22:37 -0700</bug_when>
    <thetext>Created attachment 399390
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1652748</commentid>
    <comment_count>2</comment_count>
      <attachid>399390</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2020-05-14 12:37:36 -0700</bug_when>
    <thetext>Comment on attachment 399390
Patch

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

&gt; Source/JavaScriptCore/ChangeLog:9
&gt; +        Also, fix a bug that arrayModesThatPassFiltering() can&apos;t handle
&gt; +        Undecided arrays.

it&apos;d be great if you could explain what&apos;s going on here.

Are you fixing correctness, perf, both? How?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1652751</commentid>
    <comment_count>3</comment_count>
      <attachid>399390</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2020-05-14 12:38:34 -0700</bug_when>
    <thetext>Comment on attachment 399390
Patch

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

&gt; JSTests/stress/undecided-arrays-should-not-need-original-array-for-length.js:11
&gt; +const nonUndecidedFrequency = 1000

What is this for?  Is it needed?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1652760</commentid>
    <comment_count>4</comment_count>
      <attachid>399390</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2020-05-14 12:50:14 -0700</bug_when>
    <thetext>Comment on attachment 399390
Patch

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

&gt;&gt; Source/JavaScriptCore/ChangeLog:9
&gt;&gt; +        Undecided arrays.
&gt; 
&gt; it&apos;d be great if you could explain what&apos;s going on here.
&gt; 
&gt; Are you fixing correctness, perf, both? How?

It&apos;s correctness because we can now emit a CheckArray on Undecided, which AI means will try to figure out what types flow out of. But since Undecided was unhandled, AI will assume bottom is the only possible value and we will crash at runtime.

&gt;&gt; JSTests/stress/undecided-arrays-should-not-need-original-array-for-length.js:11
&gt;&gt; +const nonUndecidedFrequency = 1000
&gt; 
&gt; What is this for?  Is it needed?

That&apos;s left over from when I was trying to make this test work. I&apos;ll delete.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1652761</commentid>
    <comment_count>5</comment_count>
      <attachid>399393</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2020-05-14 12:52:32 -0700</bug_when>
    <thetext>Created attachment 399393
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1652790</commentid>
    <comment_count>6</comment_count>
      <attachid>399393</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2020-05-14 14:23:38 -0700</bug_when>
    <thetext>Comment on attachment 399393
Patch

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

r=me

&gt; Source/JavaScriptCore/ChangeLog:12
&gt; +        bottom is the only possible value and insert a breakpoint, which

nit: AI doesn&apos;t insert a breakpoint :-)

FTL/DFG compilers, based on what AI says, will

&gt; Source/JavaScriptCore/dfg/DFGArrayMode.cpp:243
&gt; +        // As long as we have a JSArray getting its length shouldn&apos;t require any sane chainness.

JSArray =&gt; JSArray,</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1652872</commentid>
    <comment_count>7</comment_count>
      <attachid>399393</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2020-05-14 16:57:38 -0700</bug_when>
    <thetext>Comment on attachment 399393
Patch

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

&gt;&gt; Source/JavaScriptCore/ChangeLog:12
&gt;&gt; +        bottom is the only possible value and insert a breakpoint, which
&gt; 
&gt; nit: AI doesn&apos;t insert a breakpoint :-)
&gt; 
&gt; FTL/DFG compilers, based on what AI says, will

That&apos;s a hell of a nit lol.

Clarified.

&gt;&gt; Source/JavaScriptCore/dfg/DFGArrayMode.cpp:243
&gt;&gt; +        // As long as we have a JSArray getting its length shouldn&apos;t require any sane chainness.
&gt; 
&gt; JSArray =&gt; JSArray,

Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1652879</commentid>
    <comment_count>8</comment_count>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2020-05-14 17:08:28 -0700</bug_when>
    <thetext>&gt; &gt;&gt; Source/JavaScriptCore/dfg/DFGArrayMode.cpp:243
&gt; &gt;&gt; +        // As long as we have a JSArray getting its length shouldn&apos;t require any sane chainness.
&gt; &gt; 
&gt; &gt; JSArray =&gt; JSArray,
&gt; 
&gt; Done.

Actually, I don&apos;t think there should be a comma here. I think it&apos;s just a normal preposition.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1652884</commentid>
    <comment_count>9</comment_count>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2020-05-14 17:18:05 -0700</bug_when>
    <thetext>*** Bug 211301 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1652885</commentid>
    <comment_count>10</comment_count>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2020-05-14 17:20:31 -0700</bug_when>
    <thetext>Committed r261725: &lt;https://trac.webkit.org/changeset/261725&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1652886</commentid>
    <comment_count>11</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-05-14 17:21:16 -0700</bug_when>
    <thetext>&lt;rdar://problem/63250437&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1652962</commentid>
    <comment_count>12</comment_count>
    <who name="Minh Tran">myoki.crystal</who>
    <bug_when>2020-05-15 00:23:30 -0700</bug_when>
    <thetext>*** Bug 211301 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>399390</attachid>
            <date>2020-05-14 12:22:37 -0700</date>
            <delta_ts>2020-05-14 12:52:31 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-211914-20200514122236.patch</filename>
            <type>text/plain</type>
            <size>4694</size>
            <attacher name="Keith Miller">keith_miller</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYxNjk5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBl
Y2I0MTEyMzU2NGQ3YWRmNDE0NjJjOTRlNTU0YWM3NzNlMWFiMmUzLi40MDBkMmRiNjQyNDE5ZmJk
ZDJjMGY3ZGFjNWQ4YzgxNTExN2FkZGMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxOCBAQAorMjAyMC0wNS0xNCAgS2VpdGggTWlsbGVyICA8a2VpdGhfbWlsbGVyQGFwcGxl
LmNvbT4KKworICAgICAgICBVbmRlY2lkZWQgQXJyYXlzIHNob3VsZG4ndCBuZWVkIHRvIGJlIE9y
aWdpbmFsQXJyYXkgdG8gY292ZXJ0IHRvIEdldEFycmF5TGVuZ3RoCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTE5MTQKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBbHNvLCBmaXggYSBidWcgdGhhdCBhcnJh
eU1vZGVzVGhhdFBhc3NGaWx0ZXJpbmcoKSBjYW4ndCBoYW5kbGUKKyAgICAgICAgVW5kZWNpZGVk
IGFycmF5cy4KKworICAgICAgICAqIGRmZy9ERkdBcnJheU1vZGUuY3BwOgorICAgICAgICAoSlND
OjpERkc6OkFycmF5TW9kZTo6cmVmaW5lIGNvbnN0KToKKyAgICAgICAgKiBkZmcvREZHQXJyYXlN
b2RlLmg6CisgICAgICAgIChKU0M6OkRGRzo6QXJyYXlNb2RlOjphcnJheU1vZGVzVGhhdFBhc3NG
aWx0ZXJpbmcgY29uc3QpOgorCiAyMDIwLTA1LTEzICBLZWl0aCBNaWxsZXIgIDxrZWl0aF9taWxs
ZXJAYXBwbGUuY29tPgogCiAgICAgICAgIGl0ZXJhdGlvbiBieXRlY29kZXMgbmVlZCB0byBoYW5k
bGUgb3NyIGV4aXRpbmcgZnJvbSBpbmxpbmVkIGdldHRlciBmcmFtZXMKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQXJyYXlNb2RlLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9kZmcvREZHQXJyYXlNb2RlLmNwcAppbmRleCBmMzIyNDVmZjdlMTFhNTBlMTUxMmQ0
MTQxODYwOTkyMjMzNThkYTAzLi4xMDM0NTA5OTNjMGM0MDFhMmVkZjZiMGVkY2U0NTRlYzE5NjZh
MzI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0FycmF5TW9kZS5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdBcnJheU1vZGUuY3BwCkBAIC0y
NDAsMTIgKzI0MCwxNiBAQCBBcnJheU1vZGUgQXJyYXlNb2RlOjpyZWZpbmUoCiAgICAgICAgICAg
ICByZXR1cm4gd2l0aFR5cGVBbmRDb252ZXJzaW9uKEFycmF5OjpEb3VibGUsIEFycmF5OjpDb252
ZXJ0KTsKICAgICAgICAgcmV0dXJuIHdpdGhUeXBlQW5kQ29udmVyc2lvbihBcnJheTo6Q29udGln
dW91cywgQXJyYXk6OkNvbnZlcnQpOwogICAgIGNhc2UgQXJyYXk6OlVuZGVjaWRlZDogeworICAg
ICAgICAvLyBBcyBsb25nIGFzIHdlIGhhdmUgYSBKU0FycmF5IGdldHRpbmcgaXRzIGxlbmd0aCBz
aG91bGRuJ3QgcmVxdWlyZSBhbnkgc2FuZSBjaGFpbm5lc3MuCisgICAgICAgIGlmIChjYW5CZWNv
bWVHZXRBcnJheUxlbmd0aChncmFwaCwgbm9kZSkgJiYgaXNKU0FycmF5KCkpCisgICAgICAgICAg
ICByZXR1cm4gKnRoaXM7CisKICAgICAgICAgLy8gSWYgd2UgaGF2ZSBhbiBPcmlnaW5hbEFycmF5
IGFuZCB0aGUgSlNBcnJheSBwcm90b3R5cGUgY2hhaW4gaXMgc2FuZSwKICAgICAgICAgLy8gYW55
IGluZGV4ZWQgYWNjZXNzIGFsd2F5cyByZXR1cm4gdW5kZWZpbmVkLiBXZSBoYXZlIGEgZmFzdCBw
YXRoIGZvciB0aGF0LgogICAgICAgICBKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0ID0gZ3Jh
cGguZ2xvYmFsT2JqZWN0Rm9yKG5vZGUtPm9yaWdpbi5zZW1hbnRpYyk7CiAgICAgICAgIFN0cnVj
dHVyZSogYXJyYXlQcm90b3R5cGVTdHJ1Y3R1cmUgPSBnbG9iYWxPYmplY3QtPmFycmF5UHJvdG90
eXBlKCktPnN0cnVjdHVyZShncmFwaC5tX3ZtKTsKICAgICAgICAgU3RydWN0dXJlKiBvYmplY3RQ
cm90b3R5cGVTdHJ1Y3R1cmUgPSBnbG9iYWxPYmplY3QtPm9iamVjdFByb3RvdHlwZSgpLT5zdHJ1
Y3R1cmUoZ3JhcGgubV92bSk7Ci0gICAgICAgIGlmICgobm9kZS0+b3AoKSA9PSBHZXRCeVZhbCB8
fCBjYW5CZWNvbWVHZXRBcnJheUxlbmd0aChncmFwaCwgbm9kZSkpCisgICAgICAgIGlmIChub2Rl
LT5vcCgpID09IEdldEJ5VmFsCiAgICAgICAgICAgICAmJiBpc0pTQXJyYXlXaXRoT3JpZ2luYWxT
dHJ1Y3R1cmUoKQogICAgICAgICAgICAgJiYgIWdyYXBoLmhhc0V4aXRTaXRlKG5vZGUtPm9yaWdp
bi5zZW1hbnRpYywgT3V0T2ZCb3VuZHMpCiAgICAgICAgICAgICAmJiBhcnJheVByb3RvdHlwZVN0
cnVjdHVyZS0+dHJhbnNpdGlvbldhdGNocG9pbnRTZXRJc1N0aWxsVmFsaWQoKQpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdBcnJheU1vZGUuaCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9kZmcvREZHQXJyYXlNb2RlLmgKaW5kZXggZmRiNzFlNzY0ZDA1NjAyNjEzMTJl
M2I2YTlmMWUzOTVmNWI5MjJlYi4uMDUxMDM1ZTJjODE3YTJlYWZlN2RiZTM4ODBkNTM5YjhhMTY3
MjZiNyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdBcnJheU1vZGUu
aAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0FycmF5TW9kZS5oCkBAIC00Mjks
NiArNDI5LDggQEAgcHVibGljOgogICAgICAgICBzd2l0Y2ggKHR5cGUoKSkgewogICAgICAgICBj
YXNlIEFycmF5OjpHZW5lcmljOgogICAgICAgICAgICAgcmV0dXJuIEFMTF9BUlJBWV9NT0RFUzsK
KyAgICAgICAgY2FzZSBBcnJheTo6VW5kZWNpZGVkOgorICAgICAgICAgICAgcmV0dXJuIGFycmF5
TW9kZXNXaXRoSW5kZXhpbmdTaGFwZXMoVW5kZWNpZGVkU2hhcGUpOwogICAgICAgICBjYXNlIEFy
cmF5OjpJbnQzMjoKICAgICAgICAgICAgIHJlc3VsdCA9IGFycmF5TW9kZXNXaXRoSW5kZXhpbmdT
aGFwZXMoSW50MzJTaGFwZSk7CiAgICAgICAgICAgICBicmVhazsKZGlmZiAtLWdpdCBhL0pTVGVz
dHMvQ2hhbmdlTG9nIGIvSlNUZXN0cy9DaGFuZ2VMb2cKaW5kZXggOTEwYmY0NjRjNGZlZDk1Y2Ix
OTc4ZTE4MDk2NDRjOGY5MDVkMDY0Ni4uYmVhMDYxNzg1ZGIwZGIxNmE1MGYyZGEzN2RhMTU4ODFm
YzRiYWI4NyAxMDA2NDQKLS0tIGEvSlNUZXN0cy9DaGFuZ2VMb2cKKysrIGIvSlNUZXN0cy9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAyMC0wNS0xNCAgS2VpdGggTWlsbGVyICA8a2VpdGhf
bWlsbGVyQGFwcGxlLmNvbT4KKworICAgICAgICBVbmRlY2lkZWQgQXJyYXlzIHNob3VsZG4ndCBu
ZWVkIHRvIGJlIE9yaWdpbmFsQXJyYXkgdG8gY292ZXJ0IHRvIEdldEFycmF5TGVuZ3RoCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTE5MTQKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHN0cmVzcy91bmRl
Y2lkZWQtYXJyYXlzLXNob3VsZC1ub3QtbmVlZC1vcmlnaW5hbC1hcnJheS1mb3ItbGVuZ3RoLmpz
OiBBZGRlZC4KKyAgICAgICAgKGZpbmRGb28pOgorICAgICAgICAoY29uc3Qubm9uVW5kZWNpZGVk
RnJlcXVlbmN5LjEwMDAuU3ViQXJyYXkpOgorICAgICAgICAoaS5pLnNvbWUpOgorCiAyMDIwLTA1
LTEzICBLZWl0aCBNaWxsZXIgIDxrZWl0aF9taWxsZXJAYXBwbGUuY29tPgogCiAgICAgICAgIGl0
ZXJhdGlvbiBieXRlY29kZXMgbmVlZCB0byBoYW5kbGUgb3NyIGV4aXRpbmcgZnJvbSBpbmxpbmVk
IGdldHRlciBmcmFtZXMKZGlmZiAtLWdpdCBhL0pTVGVzdHMvc3RyZXNzL3VuZGVjaWRlZC1hcnJh
eXMtc2hvdWxkLW5vdC1uZWVkLW9yaWdpbmFsLWFycmF5LWZvci1sZW5ndGguanMgYi9KU1Rlc3Rz
L3N0cmVzcy91bmRlY2lkZWQtYXJyYXlzLXNob3VsZC1ub3QtbmVlZC1vcmlnaW5hbC1hcnJheS1m
b3ItbGVuZ3RoLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJlYTJkZmVkMDY3MzhkY2I5N2ZhOTQxYWIxYmFmZGZi
MjAzYTY4NzMKLS0tIC9kZXYvbnVsbAorKysgYi9KU1Rlc3RzL3N0cmVzcy91bmRlY2lkZWQtYXJy
YXlzLXNob3VsZC1ub3QtbmVlZC1vcmlnaW5hbC1hcnJheS1mb3ItbGVuZ3RoLmpzCkBAIC0wLDAg
KzEsMTggQEAKK2Z1bmN0aW9uIGZpbmRGb28obmFtZSwgYXJyYXksIGJhaWwpIHsKKyAgICBsZXQg
c29tZSA9IGFycmF5LnNvbWUKKyAgICBpZiAoYmFpbCkKKyAgICAgICAgcmV0dXJuOworICAgIHNv
bWUuY2FsbChhcnJheSwgZnVuY3Rpb24gKHYpIHsKKyAgICAgICAgcmV0dXJuIHYgPT09IG5hbWU7
CisgICAgfSk7Cit9Citub0lubGluZShmaW5kRm9vKTsKKworY29uc3Qgbm9uVW5kZWNpZGVkRnJl
cXVlbmN5ID0gMTAwMAorY2xhc3MgU3ViQXJyYXkgZXh0ZW5kcyBBcnJheSB7fQorZm9yIChsZXQg
aSA9IDA7IGkgPCAxZTU7ICsraSkgeworICAgIGxldCBhcnJheSA9IGkgJSAyID8gbmV3IFN1YkFy
cmF5KDApIDogWyJmb28iXTsKKyAgICBmaW5kRm9vKCJmb28iLCBhcnJheSwgYXJyYXkubGVuZ3Ro
KTsKKyAgICBmb3IgKGxldCBpID0gMDsgaSA8IDEwMDsgKytpKQorICAgICAgICBbXS5zb21lKGZ1
bmN0aW9uICh2KSB7IH0pOworfQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>399393</attachid>
            <date>2020-05-14 12:52:32 -0700</date>
            <delta_ts>2022-02-28 03:34:51 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-211914-20200514125231.patch</filename>
            <type>text/plain</type>
            <size>4944</size>
            <attacher name="Keith Miller">keith_miller</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYxNjk5CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBl
Y2I0MTEyMzU2NGQ3YWRmNDE0NjJjOTRlNTU0YWM3NzNlMWFiMmUzLi45NmM4YjFkNDZiYzI4Zjg3
MGY2NGNkY2JmMjMwOTg4OGI4YTBkOWI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMiBAQAorMjAyMC0wNS0xNCAgS2VpdGggTWlsbGVyICA8a2VpdGhfbWlsbGVyQGFwcGxl
LmNvbT4KKworICAgICAgICBVbmRlY2lkZWQgQXJyYXlzIHNob3VsZG4ndCBuZWVkIHRvIGJlIE9y
aWdpbmFsQXJyYXkgdG8gY292ZXJ0IHRvIEdldEFycmF5TGVuZ3RoCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTE5MTQKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBbHNvLCBmaXggYSBidWcgdGhhdCBhcnJh
eU1vZGVzVGhhdFBhc3NGaWx0ZXJpbmcoKSBjYW4ndCBoYW5kbGUKKyAgICAgICAgVW5kZWNpZGVk
IGFycmF5cy4gQmVjYXVzZSB3ZSBjYW4gbm93IGVtaXQgYSBDaGVja0FycmF5IG9uCisgICAgICAg
IFVuZGVjaWRlZCBBSSB3aWxsIHRyeSB0byBmaWd1cmUgb3V0IHdoYXQgdHlwZXMgZmxvdyBvdXQg
b2YgdGhlCisgICAgICAgIGNoZWNrLiBTaW5jZSBVbmRlY2lkZWQgd2FzIHVuaGFuZGxlZCBieSBm
aWx0ZXJpbmcsIEFJIHdpbGwgYXNzdW1lCisgICAgICAgIGJvdHRvbSBpcyB0aGUgb25seSBwb3Nz
aWJsZSB2YWx1ZSBhbmQgaW5zZXJ0IGEgYnJlYWtwb2ludCwgd2hpY2gKKyAgICAgICAgY2F1c2Vz
IGEgY3Jhc2guCisKKyAgICAgICAgKiBkZmcvREZHQXJyYXlNb2RlLmNwcDoKKyAgICAgICAgKEpT
Qzo6REZHOjpBcnJheU1vZGU6OnJlZmluZSBjb25zdCk6CisgICAgICAgICogZGZnL0RGR0FycmF5
TW9kZS5oOgorICAgICAgICAoSlNDOjpERkc6OkFycmF5TW9kZTo6YXJyYXlNb2Rlc1RoYXRQYXNz
RmlsdGVyaW5nIGNvbnN0KToKKwogMjAyMC0wNS0xMyAgS2VpdGggTWlsbGVyICA8a2VpdGhfbWls
bGVyQGFwcGxlLmNvbT4KIAogICAgICAgICBpdGVyYXRpb24gYnl0ZWNvZGVzIG5lZWQgdG8gaGFu
ZGxlIG9zciBleGl0aW5nIGZyb20gaW5saW5lZCBnZXR0ZXIgZnJhbWVzCmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0FycmF5TW9kZS5jcHAgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvZGZnL0RGR0FycmF5TW9kZS5jcHAKaW5kZXggZjMyMjQ1ZmY3ZTExYTUwZTE1MTJk
NDE0MTg2MDk5MjIzMzU4ZGEwMy4uMTAzNDUwOTkzYzBjNDAxYTJlZGY2YjBlZGNlNDU0ZWMxOTY2
YTMyNiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdBcnJheU1vZGUu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQXJyYXlNb2RlLmNwcApAQCAt
MjQwLDEyICsyNDAsMTYgQEAgQXJyYXlNb2RlIEFycmF5TW9kZTo6cmVmaW5lKAogICAgICAgICAg
ICAgcmV0dXJuIHdpdGhUeXBlQW5kQ29udmVyc2lvbihBcnJheTo6RG91YmxlLCBBcnJheTo6Q29u
dmVydCk7CiAgICAgICAgIHJldHVybiB3aXRoVHlwZUFuZENvbnZlcnNpb24oQXJyYXk6OkNvbnRp
Z3VvdXMsIEFycmF5OjpDb252ZXJ0KTsKICAgICBjYXNlIEFycmF5OjpVbmRlY2lkZWQ6IHsKKyAg
ICAgICAgLy8gQXMgbG9uZyBhcyB3ZSBoYXZlIGEgSlNBcnJheSBnZXR0aW5nIGl0cyBsZW5ndGgg
c2hvdWxkbid0IHJlcXVpcmUgYW55IHNhbmUgY2hhaW5uZXNzLgorICAgICAgICBpZiAoY2FuQmVj
b21lR2V0QXJyYXlMZW5ndGgoZ3JhcGgsIG5vZGUpICYmIGlzSlNBcnJheSgpKQorICAgICAgICAg
ICAgcmV0dXJuICp0aGlzOworCiAgICAgICAgIC8vIElmIHdlIGhhdmUgYW4gT3JpZ2luYWxBcnJh
eSBhbmQgdGhlIEpTQXJyYXkgcHJvdG90eXBlIGNoYWluIGlzIHNhbmUsCiAgICAgICAgIC8vIGFu
eSBpbmRleGVkIGFjY2VzcyBhbHdheXMgcmV0dXJuIHVuZGVmaW5lZC4gV2UgaGF2ZSBhIGZhc3Qg
cGF0aCBmb3IgdGhhdC4KICAgICAgICAgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCA9IGdy
YXBoLmdsb2JhbE9iamVjdEZvcihub2RlLT5vcmlnaW4uc2VtYW50aWMpOwogICAgICAgICBTdHJ1
Y3R1cmUqIGFycmF5UHJvdG90eXBlU3RydWN0dXJlID0gZ2xvYmFsT2JqZWN0LT5hcnJheVByb3Rv
dHlwZSgpLT5zdHJ1Y3R1cmUoZ3JhcGgubV92bSk7CiAgICAgICAgIFN0cnVjdHVyZSogb2JqZWN0
UHJvdG90eXBlU3RydWN0dXJlID0gZ2xvYmFsT2JqZWN0LT5vYmplY3RQcm90b3R5cGUoKS0+c3Ry
dWN0dXJlKGdyYXBoLm1fdm0pOwotICAgICAgICBpZiAoKG5vZGUtPm9wKCkgPT0gR2V0QnlWYWwg
fHwgY2FuQmVjb21lR2V0QXJyYXlMZW5ndGgoZ3JhcGgsIG5vZGUpKQorICAgICAgICBpZiAobm9k
ZS0+b3AoKSA9PSBHZXRCeVZhbAogICAgICAgICAgICAgJiYgaXNKU0FycmF5V2l0aE9yaWdpbmFs
U3RydWN0dXJlKCkKICAgICAgICAgICAgICYmICFncmFwaC5oYXNFeGl0U2l0ZShub2RlLT5vcmln
aW4uc2VtYW50aWMsIE91dE9mQm91bmRzKQogICAgICAgICAgICAgJiYgYXJyYXlQcm90b3R5cGVT
dHJ1Y3R1cmUtPnRyYW5zaXRpb25XYXRjaHBvaW50U2V0SXNTdGlsbFZhbGlkKCkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQXJyYXlNb2RlLmggYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvZGZnL0RGR0FycmF5TW9kZS5oCmluZGV4IGZkYjcxZTc2NGQwNTYwMjYxMzEy
ZTNiNmE5ZjFlMzk1ZjViOTIyZWIuLjA1MTAzNWUyYzgxN2EyZWFmZTdkYmUzODgwZDUzOWI4YTE2
NzI2YjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQXJyYXlNb2Rl
LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdBcnJheU1vZGUuaApAQCAtNDI5
LDYgKzQyOSw4IEBAIHB1YmxpYzoKICAgICAgICAgc3dpdGNoICh0eXBlKCkpIHsKICAgICAgICAg
Y2FzZSBBcnJheTo6R2VuZXJpYzoKICAgICAgICAgICAgIHJldHVybiBBTExfQVJSQVlfTU9ERVM7
CisgICAgICAgIGNhc2UgQXJyYXk6OlVuZGVjaWRlZDoKKyAgICAgICAgICAgIHJldHVybiBhcnJh
eU1vZGVzV2l0aEluZGV4aW5nU2hhcGVzKFVuZGVjaWRlZFNoYXBlKTsKICAgICAgICAgY2FzZSBB
cnJheTo6SW50MzI6CiAgICAgICAgICAgICByZXN1bHQgPSBhcnJheU1vZGVzV2l0aEluZGV4aW5n
U2hhcGVzKEludDMyU2hhcGUpOwogICAgICAgICAgICAgYnJlYWs7CmRpZmYgLS1naXQgYS9KU1Rl
c3RzL0NoYW5nZUxvZyBiL0pTVGVzdHMvQ2hhbmdlTG9nCmluZGV4IDkxMGJmNDY0YzRmZWQ5NWNi
MTk3OGUxODA5NjQ0YzhmOTA1ZDA2NDYuLmJlYTA2MTc4NWRiMGRiMTZhNTBmMmRhMzdkYTE1ODgx
ZmM0YmFiODcgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMvQ2hhbmdlTG9nCisrKyBiL0pTVGVzdHMvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMjAtMDUtMTQgIEtlaXRoIE1pbGxlciAgPGtlaXRo
X21pbGxlckBhcHBsZS5jb20+CisKKyAgICAgICAgVW5kZWNpZGVkIEFycmF5cyBzaG91bGRuJ3Qg
bmVlZCB0byBiZSBPcmlnaW5hbEFycmF5IHRvIGNvdmVydCB0byBHZXRBcnJheUxlbmd0aAorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjExOTE0CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBzdHJlc3MvdW5k
ZWNpZGVkLWFycmF5cy1zaG91bGQtbm90LW5lZWQtb3JpZ2luYWwtYXJyYXktZm9yLWxlbmd0aC5q
czogQWRkZWQuCisgICAgICAgIChmaW5kRm9vKToKKyAgICAgICAgKGNvbnN0Lm5vblVuZGVjaWRl
ZEZyZXF1ZW5jeS4xMDAwLlN1YkFycmF5KToKKyAgICAgICAgKGkuaS5zb21lKToKKwogMjAyMC0w
NS0xMyAgS2VpdGggTWlsbGVyICA8a2VpdGhfbWlsbGVyQGFwcGxlLmNvbT4KIAogICAgICAgICBp
dGVyYXRpb24gYnl0ZWNvZGVzIG5lZWQgdG8gaGFuZGxlIG9zciBleGl0aW5nIGZyb20gaW5saW5l
ZCBnZXR0ZXIgZnJhbWVzCmRpZmYgLS1naXQgYS9KU1Rlc3RzL3N0cmVzcy91bmRlY2lkZWQtYXJy
YXlzLXNob3VsZC1ub3QtbmVlZC1vcmlnaW5hbC1hcnJheS1mb3ItbGVuZ3RoLmpzIGIvSlNUZXN0
cy9zdHJlc3MvdW5kZWNpZGVkLWFycmF5cy1zaG91bGQtbm90LW5lZWQtb3JpZ2luYWwtYXJyYXkt
Zm9yLWxlbmd0aC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44OTRmYTBmMzc0ODkwNjQxMGI1YmVmYTFkNTA2ZGNh
MTkyYTI5YTRhCi0tLSAvZGV2L251bGwKKysrIGIvSlNUZXN0cy9zdHJlc3MvdW5kZWNpZGVkLWFy
cmF5cy1zaG91bGQtbm90LW5lZWQtb3JpZ2luYWwtYXJyYXktZm9yLWxlbmd0aC5qcwpAQCAtMCww
ICsxLDE3IEBACitmdW5jdGlvbiBmaW5kRm9vKG5hbWUsIGFycmF5LCBiYWlsKSB7CisgICAgbGV0
IHNvbWUgPSBhcnJheS5zb21lCisgICAgaWYgKGJhaWwpCisgICAgICAgIHJldHVybjsKKyAgICBz
b21lLmNhbGwoYXJyYXksIGZ1bmN0aW9uICh2KSB7CisgICAgICAgIHJldHVybiB2ID09PSBuYW1l
OworICAgIH0pOworfQorbm9JbmxpbmUoZmluZEZvbyk7CisKK2NsYXNzIFN1YkFycmF5IGV4dGVu
ZHMgQXJyYXkge30KK2ZvciAobGV0IGkgPSAwOyBpIDwgMWU1OyArK2kpIHsKKyAgICBsZXQgYXJy
YXkgPSBpICUgMiA/IG5ldyBTdWJBcnJheSgwKSA6IFsiZm9vIl07CisgICAgZmluZEZvbygiZm9v
IiwgYXJyYXksIGFycmF5Lmxlbmd0aCk7CisgICAgZm9yIChsZXQgaSA9IDA7IGkgPCAxMDA7ICsr
aSkKKyAgICAgICAgW10uc29tZShmdW5jdGlvbiAodikgeyB9KTsKK30K
</data>
<flag name="review"
          id="414823"
          type_id="1"
          status="+"
          setter="saam"
    />
          </attachment>
      

    </bug>

</bugzilla>