<?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>197765</bug_id>
          
          <creation_ts>2019-05-09 20:29:14 -0700</creation_ts>
          <short_desc>[JSC] String substring operation should return ropes consistently</short_desc>
          <delta_ts>2019-05-13 16:43:35 -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="Yusuke Suzuki">ysuzuki</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1534941</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2019-05-09 20:29:14 -0700</bug_when>
    <thetext>[JSC] String substring operation should return ropes consistently</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1534943</commentid>
    <comment_count>1</comment_count>
      <attachid>369541</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2019-05-09 20:42:34 -0700</bug_when>
    <thetext>Created attachment 369541
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1535046</commentid>
    <comment_count>2</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2019-05-10 10:04:15 -0700</bug_when>
    <thetext>&lt;rdar://problem/37689944&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1535067</commentid>
    <comment_count>3</comment_count>
      <attachid>369564</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2019-05-10 10:41:38 -0700</bug_when>
    <thetext>Created attachment 369564
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1535131</commentid>
    <comment_count>4</comment_count>
      <attachid>369580</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2019-05-10 12:31:51 -0700</bug_when>
    <thetext>Created attachment 369580
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1535136</commentid>
    <comment_count>5</comment_count>
      <attachid>369580</attachid>
    <who name="Michael Saboff">msaboff</who>
    <bug_when>2019-05-10 12:45:31 -0700</bug_when>
    <thetext>Comment on attachment 369580
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1535175</commentid>
    <comment_count>6</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2019-05-10 13:49:43 -0700</bug_when>
    <thetext>Committed r245194: &lt;https://trac.webkit.org/changeset/245194&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1535873</commentid>
    <comment_count>7</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2019-05-13 16:43:35 -0700</bug_when>
    <thetext>Ah, my investigation was wrong.
While memory reduction is real, the effect comes from the fact that JSRopeString is cheaper than JSString + StringImpl. Not related StringImpl&apos;s substring sharing feature.
So, maybe, we should just prefer JSRopeString for substring cases.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>369541</attachid>
            <date>2019-05-09 20:42:34 -0700</date>
            <delta_ts>2019-05-10 10:41:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-197765-20190509204233.patch</filename>
            <type>text/plain</type>
            <size>6511</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ1MTY3CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA4
ODk1MjM4YTljNDRiOGRhNjY2NTlhOTRhMjBiM2YzMmY0YjU0ZmRiLi4xZmNhZTgxZWI2NzU5ZGE2
NjZhMjg2NGQ0ZjcyODQ4YjYxZmI1MDBmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzNCBAQAorMjAxOS0wNS0wOSAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIFN0cmluZyBzdWJzdHJpbmcgb3BlcmF0aW9uIHNob3VsZCByZXR1
cm4gcm9wZXMgY29uc2lzdGVudGx5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xOTc3NjUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBDdXJyZW50bHkgd2UgaGF2ZSBkaWZmZXJlbnQgcG9saWNpZXMgcGVyIHN0
cmluZyBzdWJzdHJpbmcgb3BlcmF0aW9uIGZ1bmN0aW9uLgorCisgICAgICAgICAgICAxLiBTdHJp
bmcjc2xpY2UgcmV0dXJucyB0aGUgcmVzb2x2ZWQgbm9uLXJvcGUgU3RyaW5nCisgICAgICAgICAg
ICAyLiBTdHJpbmcjc3Vic3RyaW5nIHJldHVybnMgcm9wZSBTdHJpbmcKKyAgICAgICAgICAgIDMu
IFN0cmluZyNzdWJzdHIgcmV0dXJucyByb3BlIFN0cmluZyBpbiBydW50aW1lIGZ1bmN0aW9uLCBu
b24tcm9wZSBTdHJpbmcgaW4gREZHIGFuZCBGVEwKKworICAgICAgICBEdWUgdG8gKDMpLCB3ZSBz
ZWUgbGFyZ2UgbWVtb3J5IHVzZSBpbiBodHRwczovL2JldGEub2JzZXJ2YWJsZWhxLmNvbS9AbGRn
YXJkbmVyL2Fzc2lnbm1lbnQtNC12aXN1YWxpemF0aW9ucy1hbmQtbXVsdGlwbGUtdmlld3MuCisg
ICAgICAgIFRoZSByZXN1bHQgb2YgU3RyaW5nI3tzdWJzdHJpbmcsc3Vic3RyLHNsaWNlfSB3b3Vs
ZCBub3QgYmUgcmVzb2x2ZWQgYW5kIHVzZWQuIFNvIHdlIHNob3VsZCByZXR1cm4gcm9wZSBzdHJp
bmcgaW5zdGVhZCBiZWNhdXNlCisgICAgICAgIG5vdyByb3BlIHN0cmluZyBpcyBjaGVhcCAoc2l6
ZW9mKEpTUm9wZVN0cmluZykgaXMgMzIpLgorCisgICAgICAgIEluIGFkZGl0aW9uLCByb3BlIFN0
cmluZyBhbGxvd3MgdXMgdG8gcmVzb2x2ZSBzdHJpbmcgd2hlbiB3ZSBhY3R1YWxseSB1c2UgaXQu
IEN1cnJlbnRseSwgd2UgZWFnZXJseSByZXNvbHZlIHRoZSByZXN1bHRlZCBzdHJpbmcuCisgICAg
ICAgIFRvIG1ha2UgbWVtb3J5IGVmZmljaWVudCwgd2UgYXJlIHVzaW5nIFN0cmluZ0ltcGwncyBz
dWJzdHJpbmcgZmVhdHVyZSAodGhlIHN1YnN0cmluZyBpcyBwb2ludGluZyB0aGUgb3duZXIgU3Ry
aW5nSW1wbCkuIFdoaWxlIHRoaXMKKyAgICAgICAgaGFzIG1lbW9yeSBzYXZpbmcgYmVuZWZpdCwg
aXQgY2FuIHJldGFpbiBvd25lciBTdHJpbmdJbXBsIHNvIGxvbmcsIGFuZCBpdCBjb3VsZCBrZWVw
IHZlcnkgbG9uZyBvd25lciBTdHJpbmdJbXBsIGxpdmUuCisgICAgICAgIFdoZW4gcmVzb2x2aW5n
IHJvcGUgU3RyaW5nLCB3ZSBhbHdheXMgY3JlYXRlIGEgbmV3IFN0cmluZ0ltcGwuIFNvIHdlIGFs
bG93IHRoZSBvd25lciBTdHJpbmdJbXBsIHRvIGJlIGRlc3Ryb3llZC4gQW5kIHRoaXMgcmVzb2x2
aW5nCisgICAgICAgIG9ubHkgaGFwcGVucyB3aGVuIHdlIGFjdHVhbGx5IHdhbnQgdG8gdXNlIHRo
ZSBjb250ZW50IG9mIHRoZSByb3BlIFN0cmluZy4KKworICAgICAgICBJbiB0aGlzIHBhdGNoLCB3
ZSBjaGFuZ2UgKDIpIGFuZCAoMykgdG8gKDEpLCB1c2luZyByb3BlIFN0cmluZyBhcyBhIHJlc3Vs
dCBvZiBzdWJzdHJpbmcgb3BlcmF0aW9ucy4KKworICAgICAgICAqIGRmZy9ERkdPcGVyYXRpb25z
LmNwcDoKKyAgICAgICAgKiBydW50aW1lL1N0cmluZ1Byb3RvdHlwZS5jcHA6CisgICAgICAgIChK
U0M6OnN0cmluZ1Byb3RvRnVuY1NsaWNlKToKKyAgICAgICAgKiBydW50aW1lL1N0cmluZ1Byb3Rv
dHlwZUlubGluZXMuaDoKKyAgICAgICAgKEpTQzo6c3RyaW5nU2xpY2UpOgorCiAyMDE5LTA1LTA5
ICBLZWl0aCBNaWxsZXIgIDxrZWl0aF9taWxsZXJAYXBwbGUuY29tPgogCiAgICAgICAgIHBhcnNl
U3RhdGVtZW50TGlzdEl0ZW0gbmVlZHMgYSBzdGFjayBvdmVyZmxvdyBjaGVjawpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdPcGVyYXRpb25zLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9kZmcvREZHT3BlcmF0aW9ucy5jcHAKaW5kZXggMmVhNGViMzZjYmUwNDk3
ZmY5OGM2OTJiMmVjOWEzOWVjZDM5MTY3Ny4uZWU1M2Q2MWQ3Zjc1NDY3ODFhOTA0Njc2MGYyYTVh
OWVmMzhiNmVkNSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdPcGVy
YXRpb25zLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR09wZXJhdGlvbnMu
Y3BwCkBAIC0yMTk3LDI0ICsyMTk3LDE4IEBAIEpTQ2VsbCogSklUX09QRVJBVElPTiBvcGVyYXRp
b25TdHJpbmdTdWJzdHIoRXhlY1N0YXRlKiBleGVjLCBKU0NlbGwqIGNlbGwsIGludDMyCiB7CiAg
ICAgVk0mIHZtID0gZXhlYy0+dm0oKTsKICAgICBOYXRpdmVDYWxsRnJhbWVUcmFjZXIgdHJhY2Vy
KCZ2bSwgZXhlYyk7Ci0gICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwog
Ci0gICAgYXV0byBzdHJpbmcgPSBqc0Nhc3Q8SlNTdHJpbmcqPihjZWxsKS0+dmFsdWUoZXhlYyk7
Ci0gICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0cik7Ci0gICAgcmV0dXJuIGpz
U3Vic3RyaW5nKCZ2bSwgc3RyaW5nLCBmcm9tLCBzcGFuKTsKKyAgICByZXR1cm4ganNTdWJzdHJp
bmcodm0sIGV4ZWMsIGpzQ2FzdDxKU1N0cmluZyo+KGNlbGwpLCBmcm9tLCBzcGFuKTsKIH0KIAog
SlNDZWxsKiBKSVRfT1BFUkFUSU9OIG9wZXJhdGlvblN0cmluZ1NsaWNlKEV4ZWNTdGF0ZSogZXhl
YywgSlNDZWxsKiBjZWxsLCBpbnQzMl90IHN0YXJ0LCBpbnQzMl90IGVuZCkKIHsKICAgICBWTSYg
dm0gPSBleGVjLT52bSgpOwogICAgIE5hdGl2ZUNhbGxGcmFtZVRyYWNlciB0cmFjZXIoJnZtLCBl
eGVjKTsKLSAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAKLSAgICBh
dXRvIHN0cmluZyA9IGpzQ2FzdDxKU1N0cmluZyo+KGNlbGwpLT52YWx1ZShleGVjKTsKLSAgICBS
RVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBudWxscHRyKTsKKyAgICBKU1N0cmluZyogc3RyaW5n
ID0gYXNTdHJpbmcoY2VsbCk7CiAgICAgc3RhdGljX2Fzc2VydChzdGF0aWNfY2FzdDx1aW50NjRf
dD4oSlNTdHJpbmc6Ok1heExlbmd0aCkgPD0gc3RhdGljX2Nhc3Q8dWludDY0X3Q+KHN0ZDo6bnVt
ZXJpY19saW1pdHM8aW50MzJfdD46Om1heCgpKSwgIiIpOwotCi0gICAgcmV0dXJuIHN0cmluZ1Ns
aWNlKHZtLCBXVEZNb3ZlKHN0cmluZyksIHN0YXJ0LCBlbmQpOworICAgIHJldHVybiBzdHJpbmdT
bGljZShleGVjLCB2bSwgc3RyaW5nLCBzdHJpbmctPmxlbmd0aCgpLCBzdGFydCwgZW5kKTsKIH0K
IAogSlNTdHJpbmcqIEpJVF9PUEVSQVRJT04gb3BlcmF0aW9uVG9Mb3dlckNhc2UoRXhlY1N0YXRl
KiBleGVjLCBKU1N0cmluZyogc3RyaW5nLCB1aW50MzJfdCBmYWlsaW5nSW5kZXgpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdQcm90b3R5cGUuY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nUHJvdG90eXBlLmNwcAppbmRleCAz
NDhiZjBkYWY1ZDBkOGQxMDMyOWNmYjkwZmQwNDhjMjE4YTJiM2U5Li5mNGRiOGZkNDg0OGYxMWIz
YjU1NTgwNjNlYjM2YmY2M2ExMWNkOWIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9TdHJpbmdQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL1N0cmluZ1Byb3RvdHlwZS5jcHAKQEAgLTExNDMsMjEgKzExNDMsMjEgQEAgRW5j
b2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBzdHJpbmdQcm90b0Z1bmNTbGljZShFeGVjU3RhdGUq
IGV4ZWMpCiAgICAgSlNWYWx1ZSB0aGlzVmFsdWUgPSBleGVjLT50aGlzVmFsdWUoKTsKICAgICBp
ZiAoIWNoZWNrT2JqZWN0Q29lcmNpYmxlKHRoaXNWYWx1ZSkpCiAgICAgICAgIHJldHVybiB0aHJv
d1ZNVHlwZUVycm9yKGV4ZWMsIHNjb3BlKTsKLSAgICBTdHJpbmcgcyA9IHRoaXNWYWx1ZS50b1dU
RlN0cmluZyhleGVjKTsKKyAgICBKU1N0cmluZyogc3RyaW5nID0gdGhpc1ZhbHVlLnRvU3RyaW5n
KGV4ZWMpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkp
OwogCiAgICAgSlNWYWx1ZSBhMCA9IGV4ZWMtPmFyZ3VtZW50KDApOwogICAgIEpTVmFsdWUgYTEg
PSBleGVjLT5hcmd1bWVudCgxKTsKIAotICAgIGludCBsZW4gPSBzLmxlbmd0aCgpOwotICAgIFJF
TEVBU0VfQVNTRVJUKGxlbiA+PSAwKTsKKyAgICBpbnQgbGVuZ3RoID0gc3RyaW5nLT5sZW5ndGgo
KTsKKyAgICBSRUxFQVNFX0FTU0VSVChsZW5ndGggPj0gMCk7CiAKICAgICAvLyBUaGUgYXJnIHBy
b2Nlc3NpbmcgaXMgdmVyeSBtdWNoIGxpa2UgQXJyYXlQcm90b0Z1bmM6OlNsaWNlCiAgICAgZG91
YmxlIHN0YXJ0ID0gYTAudG9JbnRlZ2VyKGV4ZWMpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04o
c2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwotICAgIGRvdWJsZSBlbmQgPSBhMS5pc1VuZGVmaW5l
ZCgpID8gbGVuIDogYTEudG9JbnRlZ2VyKGV4ZWMpOworICAgIGRvdWJsZSBlbmQgPSBhMS5pc1Vu
ZGVmaW5lZCgpID8gbGVuZ3RoIDogYTEudG9JbnRlZ2VyKGV4ZWMpOwogICAgIFJFVFVSTl9JRl9F
WENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwotICAgIHJldHVybiBKU1ZhbHVlOjpl
bmNvZGUoc3RyaW5nU2xpY2Uodm0sIFdURk1vdmUocyksIHN0YXJ0LCBlbmQpKTsKKyAgICBSRUxF
QVNFX0FORF9SRVRVUk4oc2NvcGUsIEpTVmFsdWU6OmVuY29kZShzdHJpbmdTbGljZShleGVjLCB2
bSwgc3RyaW5nLCBsZW5ndGgsIHN0YXJ0LCBlbmQpKSk7CiB9CiAKIC8vIFJldHVybiB0cnVlIGlu
IGNhc2Ugb2YgZWFybHkgcmV0dXJuIChyZXN1bHRMZW5ndGggZ290IHRvIGxpbWl0TGVuZ3RoKS4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ1Byb3RvdHlw
ZUlubGluZXMuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ1Byb3RvdHlw
ZUlubGluZXMuaAppbmRleCA3NWNlOGQxYWM4MjkyODJhYmVlNjk2Mzc5NDYyNzBhZmVkMjU0NDk2
Li5jNTFkODkwMWM0YzBhYjY4Y2FlYzc1MWYwZjdjNTZhY2ZhZTQ4YmFlIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdQcm90b3R5cGVJbmxpbmVzLmgKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nUHJvdG90eXBlSW5saW5lcy5o
CkBAIC0zMCw5ICszMCw4IEBACiBuYW1lc3BhY2UgSlNDIHsKIAogdGVtcGxhdGU8dHlwZW5hbWUg
TnVtYmVyVHlwZT4KLUFMV0FZU19JTkxJTkUgSlNTdHJpbmcqIHN0cmluZ1NsaWNlKFZNJiB2bSwg
U3RyaW5nJiYgc3RyaW5nLCBOdW1iZXJUeXBlIHN0YXJ0LCBOdW1iZXJUeXBlIGVuZCkKK0FMV0FZ
U19JTkxJTkUgSlNTdHJpbmcqIHN0cmluZ1NsaWNlKEV4ZWNTdGF0ZSogZXhlYywgVk0mIHZtLCBK
U1N0cmluZyogc3RyaW5nLCBpbnQzMl90IGxlbmd0aCwgTnVtYmVyVHlwZSBzdGFydCwgTnVtYmVy
VHlwZSBlbmQpCiB7Ci0gICAgaW50MzJfdCBsZW5ndGggPSBzdHJpbmcubGVuZ3RoKCk7CiAgICAg
TnVtYmVyVHlwZSBmcm9tID0gc3RhcnQgPCAwID8gbGVuZ3RoICsgc3RhcnQgOiBzdGFydDsKICAg
ICBOdW1iZXJUeXBlIHRvID0gZW5kIDwgMCA/IGxlbmd0aCArIGVuZCA6IGVuZDsKICAgICBpZiAo
dG8gPiBmcm9tICYmIHRvID4gMCAmJiBmcm9tIDwgbGVuZ3RoKSB7CkBAIC00MCw3ICszOSw3IEBA
IEFMV0FZU19JTkxJTkUgSlNTdHJpbmcqIHN0cmluZ1NsaWNlKFZNJiB2bSwgU3RyaW5nJiYgc3Ry
aW5nLCBOdW1iZXJUeXBlIHN0YXJ0LCBOCiAgICAgICAgICAgICBmcm9tID0gMDsKICAgICAgICAg
aWYgKHRvID4gbGVuZ3RoKQogICAgICAgICAgICAgdG8gPSBsZW5ndGg7Ci0gICAgICAgIHJldHVy
biBqc1N1YnN0cmluZygmdm0sIFdURk1vdmUoc3RyaW5nKSwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+
KGZyb20pLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4odG8pIC0gc3RhdGljX2Nhc3Q8dW5zaWduZWQ+
KGZyb20pKTsKKyAgICAgICAgcmV0dXJuIGpzU3Vic3RyaW5nKHZtLCBleGVjLCBzdHJpbmcsIHN0
YXRpY19jYXN0PHVuc2lnbmVkPihmcm9tKSwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHRvKSAtIHN0
YXRpY19jYXN0PHVuc2lnbmVkPihmcm9tKSk7CiAgICAgfQogICAgIHJldHVybiBqc0VtcHR5U3Ry
aW5nKCZ2bSk7CiB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>369564</attachid>
            <date>2019-05-10 10:41:38 -0700</date>
            <delta_ts>2019-05-10 12:31:50 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-197765-20190510104137.patch</filename>
            <type>text/plain</type>
            <size>7184</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ1MTY3CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA4
ODk1MjM4YTljNDRiOGRhNjY2NTlhOTRhMjBiM2YzMmY0YjU0ZmRiLi43OGQyMDI0MmJhMTI0ODFm
MTNlYzIxNDA3YWI1YzEwNWIxMjYzMjJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0NCBAQAorMjAxOS0wNS0xMCAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIFN0cmluZyBzdWJzdHJpbmcgb3BlcmF0aW9uIHNob3VsZCByZXR1
cm4gcm9wZXMgY29uc2lzdGVudGx5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xOTc3NjUKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzM3Njg5OTQ0Pgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEN1cnJlbnRs
eSB3ZSBoYXZlIGRpZmZlcmVudCBwb2xpY2llcyBwZXIgc3RyaW5nIHN1YnN0cmluZyBvcGVyYXRp
b24gZnVuY3Rpb24uCisKKyAgICAgICAgICAgIDEuIFN0cmluZyNzbGljZSByZXR1cm5zIHRoZSBy
ZXNvbHZlZCBub24tcm9wZSBzdHJpbmcKKyAgICAgICAgICAgIDIuIFN0cmluZyNzdWJzdHJpbmcg
cmV0dXJucyByb3BlIHN0cmluZworICAgICAgICAgICAgMy4gU3RyaW5nI3N1YnN0ciByZXR1cm5z
IHJvcGUgc3RyaW5nIGluIHJ1bnRpbWUgZnVuY3Rpb24sIG5vbi1yb3BlIHN0cmluZyBpbiBERkcg
YW5kIEZUTAorCisgICAgICAgIER1ZSB0byAoMyksIHdlIHNlZSBsYXJnZSBtZW1vcnkgdXNlIGlu
IHRoZSB0ZXN0ZWQgd2ViIHBhZ2VbMV0uIE5vbiByb3BlIHN1YnN0cmluZyBoYXZlIGEgcHJvYmxl
bS4KKyAgICAgICAgRmlyc3Qgb2YgYWxsLCB0aGF0IHJldHVybmVkIHN0cmluZyBzZWVtcyBub3Qg
dXNlZCBpbW1lZGlhdGVseS4gSXQgaXMgcG9zc2libGUgdGhhdCB0aGUgcmVzdWx0ZWQKKyAgICAg
ICAgc3RyaW5nIGlzIHVzZWQgYXMgYSBwYXJ0IG9mIHRoZSBvdGhlciByb3BlcyAobGlrZSwgeHh4
LnN1YnN0cmluZyguLi4pICsgIkhlbGxvIikuIFRvIGF2b2lkIHRoZQorICAgICAgICBlYWdlciBt
YXRlcmlhbGl6YXRpb24gb2YgdGhlIHN0cmluZywgd2UgYXJlIHVzaW5nIFN0cmluZ0ltcGw6OmNy
ZWF0ZVN1YnN0cmluZ1NoYXJpbmdJbXBsIGZvciB0aGUKKyAgICAgICAgcmVzdWx0ZWQgbm9uIHJv
cGUgc3RyaW5nLiBTdHJpbmdJbXBsOjpjcmVhdGVTdWJzdHJpbmdTaGFyaW5nSW1wbCBpcyBTdHJp
bmdJbXBsJ3Mgc3Vic3RyaW5nIGZlYXR1cmU6IHRoZQorICAgICAgICBzdWJzdHJpbmcgaXMgcG9p
bnRpbmcgdGhlIG93bmVyIFN0cmluZ0ltcGwuIFdoaWxlIHRoaXMgaGFzIG1lbW9yeSBzYXZpbmcg
YmVuZWZpdCwgaXQgY2FuIHJldGFpbiBvd25lcgorICAgICAgICBTdHJpbmdJbXBsIHNvIGxvbmcs
IGFuZCBpdCBjb3VsZCBrZWVwIHZlcnkgbGFyZ2Ugb3duZXIgU3RyaW5nSW1wbCBhbGl2ZS4KKwor
ICAgICAgICBUaGUgcHJvYmxlbSB3ZSBhcmUgYXR0ZW1wdGluZyB0byBzb2x2ZSB3aXRoIFN0cmlu
Z0ltcGw6OmNyZWF0ZVN1YnN0cmluZ1NoYXJpbmdJbXBsIGNhbiBiZSBzb2x2ZWQgYnkKKyAgICAg
ICAgdGhlIHJvcGUgc3RyaW5nIHNpbXBseS4gUm9wZSBzdHJpbmcgY2FuIHNoYXJlIHRoZSB1bmRl
cmx5aW5nIHN0cmluZy4gQW5kIGdvb2QgZmVhdHVyZSBvZiB0aGUgcm9wZQorICAgICAgICBzdHJp
bmcgaXMgdGhhdCwgd2hlbiByZXNvbHZpbmcgcm9wZSBzdHJpbmcsIHRoZSByb3BlIHN0cmluZyBh
bHdheXMgY3JlYXRlIGEgbmV3IFN0cmluZ0ltcGwgaW5zdGVhZCBvZgorICAgICAgICB1c2luZyBT
dHJpbmdJbXBsOjpjcmVhdGVTdWJzdHJpbmdTaGFyaW5nSW1wbC4gU28gd2UgYWxsb3cgdGhlIG93
bmVyIFN0cmluZ0ltcGwgdG8gYmUgZGVzdHJveWVkLiBBbmQgdGhpcworICAgICAgICByZXNvbHZp
bmcgb25seSBoYXBwZW5zIHdoZW4gd2UgYWN0dWFsbHkgd2FudCB0byB1c2UgdGhlIGNvbnRlbnQg
b2YgdGhlIHJvcGUgc3RyaW5nLiBJbiBhZGRpdGlvbiwgd2UgcmVjZW50bHkKKyAgICAgICAgc2hy
dW5rIHRoZSBzaXplb2YoSlNSb3BlU3RyaW5nKSBmcm9tIDQ4IHRvIDMyLCBzbyBKU1JvcGVTdHJp
bmcgaXMgY2hlYXAuCisKKyAgICAgICAgSW4gdGhpcyBwYXRjaCwgd2UgY2hhbmdlICgyKSBhbmQg
KDMpIHRvICgxKSwgdXNpbmcgcm9wZSBTdHJpbmcgYXMgYSByZXN1bHQgb2Ygc3Vic3RyaW5nIG9w
ZXJhdGlvbnMuCisKKyAgICAgICAgUkFNaWZpY2F0aW9uIGFuZCBKZXRTdHJlYW0yIGFyZSBuZXV0
cmFsLiBUaGUgd2ViIHBhZ2VbMV0gc2hvd3MgbGFyZ2UgbWVtb3J5IGZvb3RwcmludCBpbXByb3Zl
bWVudCBmcm9tIDc3Nk1CIHRvIDY4MU1CLgorCisgICAgICAgIFsxXTogaHR0cHM6Ly9iZXRhLm9i
c2VydmFibGVocS5jb20vQGxkZ2FyZG5lci9hc3NpZ25tZW50LTQtdmlzdWFsaXphdGlvbnMtYW5k
LW11bHRpcGxlLXZpZXdzCisKKyAgICAgICAgKiBkZmcvREZHT3BlcmF0aW9ucy5jcHA6CisgICAg
ICAgICogcnVudGltZS9TdHJpbmdQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjpzdHJpbmdQ
cm90b0Z1bmNTbGljZSk6CisgICAgICAgICogcnVudGltZS9TdHJpbmdQcm90b3R5cGVJbmxpbmVz
Lmg6CisgICAgICAgIChKU0M6OnN0cmluZ1NsaWNlKToKKwogMjAxOS0wNS0wOSAgS2VpdGggTWls
bGVyICA8a2VpdGhfbWlsbGVyQGFwcGxlLmNvbT4KIAogICAgICAgICBwYXJzZVN0YXRlbWVudExp
c3RJdGVtIG5lZWRzIGEgc3RhY2sgb3ZlcmZsb3cgY2hlY2sKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9kZmcvREZHT3BlcmF0aW9ucy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvZGZnL0RGR09wZXJhdGlvbnMuY3BwCmluZGV4IDJlYTRlYjM2Y2JlMDQ5N2ZmOThjNjkyYjJl
YzlhMzllY2QzOTE2NzcuLmVlNTNkNjFkN2Y3NTQ2NzgxYTkwNDY3NjBmMmE1YTllZjM4YjZlZDUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHT3BlcmF0aW9ucy5jcHAK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdPcGVyYXRpb25zLmNwcApAQCAtMjE5
NywyNCArMjE5NywxOCBAQCBKU0NlbGwqIEpJVF9PUEVSQVRJT04gb3BlcmF0aW9uU3RyaW5nU3Vi
c3RyKEV4ZWNTdGF0ZSogZXhlYywgSlNDZWxsKiBjZWxsLCBpbnQzMgogewogICAgIFZNJiB2bSA9
IGV4ZWMtPnZtKCk7CiAgICAgTmF0aXZlQ2FsbEZyYW1lVHJhY2VyIHRyYWNlcigmdm0sIGV4ZWMp
OwotICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKIAotICAgIGF1dG8g
c3RyaW5nID0ganNDYXN0PEpTU3RyaW5nKj4oY2VsbCktPnZhbHVlKGV4ZWMpOwotICAgIFJFVFVS
Tl9JRl9FWENFUFRJT04oc2NvcGUsIG51bGxwdHIpOwotICAgIHJldHVybiBqc1N1YnN0cmluZygm
dm0sIHN0cmluZywgZnJvbSwgc3Bhbik7CisgICAgcmV0dXJuIGpzU3Vic3RyaW5nKHZtLCBleGVj
LCBqc0Nhc3Q8SlNTdHJpbmcqPihjZWxsKSwgZnJvbSwgc3Bhbik7CiB9CiAKIEpTQ2VsbCogSklU
X09QRVJBVElPTiBvcGVyYXRpb25TdHJpbmdTbGljZShFeGVjU3RhdGUqIGV4ZWMsIEpTQ2VsbCog
Y2VsbCwgaW50MzJfdCBzdGFydCwgaW50MzJfdCBlbmQpCiB7CiAgICAgVk0mIHZtID0gZXhlYy0+
dm0oKTsKICAgICBOYXRpdmVDYWxsRnJhbWVUcmFjZXIgdHJhY2VyKCZ2bSwgZXhlYyk7Ci0gICAg
YXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUodm0pOwogCi0gICAgYXV0byBzdHJpbmcg
PSBqc0Nhc3Q8SlNTdHJpbmcqPihjZWxsKS0+dmFsdWUoZXhlYyk7Ci0gICAgUkVUVVJOX0lGX0VY
Q0VQVElPTihzY29wZSwgbnVsbHB0cik7CisgICAgSlNTdHJpbmcqIHN0cmluZyA9IGFzU3RyaW5n
KGNlbGwpOwogICAgIHN0YXRpY19hc3NlcnQoc3RhdGljX2Nhc3Q8dWludDY0X3Q+KEpTU3RyaW5n
OjpNYXhMZW5ndGgpIDw9IHN0YXRpY19jYXN0PHVpbnQ2NF90PihzdGQ6Om51bWVyaWNfbGltaXRz
PGludDMyX3Q+OjptYXgoKSksICIiKTsKLQotICAgIHJldHVybiBzdHJpbmdTbGljZSh2bSwgV1RG
TW92ZShzdHJpbmcpLCBzdGFydCwgZW5kKTsKKyAgICByZXR1cm4gc3RyaW5nU2xpY2UoZXhlYywg
dm0sIHN0cmluZywgc3RyaW5nLT5sZW5ndGgoKSwgc3RhcnQsIGVuZCk7CiB9CiAKIEpTU3RyaW5n
KiBKSVRfT1BFUkFUSU9OIG9wZXJhdGlvblRvTG93ZXJDYXNlKEV4ZWNTdGF0ZSogZXhlYywgSlNT
dHJpbmcqIHN0cmluZywgdWludDMyX3QgZmFpbGluZ0luZGV4KQpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nUHJvdG90eXBlLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ1Byb3RvdHlwZS5jcHAKaW5kZXggMzQ4YmYwZGFmNWQw
ZDhkMTAzMjljZmI5MGZkMDQ4YzIxOGEyYjNlOS4uZjRkYjhmZDQ4NDhmMTFiM2I1NTU4MDYzZWIz
NmJmNjNhMTFjZDliMCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
U3RyaW5nUHJvdG90eXBlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9T
dHJpbmdQcm90b3R5cGUuY3BwCkBAIC0xMTQzLDIxICsxMTQzLDIxIEBAIEVuY29kZWRKU1ZhbHVl
IEpTQ19IT1NUX0NBTEwgc3RyaW5nUHJvdG9GdW5jU2xpY2UoRXhlY1N0YXRlKiBleGVjKQogICAg
IEpTVmFsdWUgdGhpc1ZhbHVlID0gZXhlYy0+dGhpc1ZhbHVlKCk7CiAgICAgaWYgKCFjaGVja09i
amVjdENvZXJjaWJsZSh0aGlzVmFsdWUpKQogICAgICAgICByZXR1cm4gdGhyb3dWTVR5cGVFcnJv
cihleGVjLCBzY29wZSk7Ci0gICAgU3RyaW5nIHMgPSB0aGlzVmFsdWUudG9XVEZTdHJpbmcoZXhl
Yyk7CisgICAgSlNTdHJpbmcqIHN0cmluZyA9IHRoaXNWYWx1ZS50b1N0cmluZyhleGVjKTsKICAg
ICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKIAogICAgIEpT
VmFsdWUgYTAgPSBleGVjLT5hcmd1bWVudCgwKTsKICAgICBKU1ZhbHVlIGExID0gZXhlYy0+YXJn
dW1lbnQoMSk7CiAKLSAgICBpbnQgbGVuID0gcy5sZW5ndGgoKTsKLSAgICBSRUxFQVNFX0FTU0VS
VChsZW4gPj0gMCk7CisgICAgaW50IGxlbmd0aCA9IHN0cmluZy0+bGVuZ3RoKCk7CisgICAgUkVM
RUFTRV9BU1NFUlQobGVuZ3RoID49IDApOwogCiAgICAgLy8gVGhlIGFyZyBwcm9jZXNzaW5nIGlz
IHZlcnkgbXVjaCBsaWtlIEFycmF5UHJvdG9GdW5jOjpTbGljZQogICAgIGRvdWJsZSBzdGFydCA9
IGEwLnRvSW50ZWdlcihleGVjKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBlbmNv
ZGVkSlNWYWx1ZSgpKTsKLSAgICBkb3VibGUgZW5kID0gYTEuaXNVbmRlZmluZWQoKSA/IGxlbiA6
IGExLnRvSW50ZWdlcihleGVjKTsKKyAgICBkb3VibGUgZW5kID0gYTEuaXNVbmRlZmluZWQoKSA/
IGxlbmd0aCA6IGExLnRvSW50ZWdlcihleGVjKTsKICAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNj
b3BlLCBlbmNvZGVkSlNWYWx1ZSgpKTsKLSAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKHN0cmlu
Z1NsaWNlKHZtLCBXVEZNb3ZlKHMpLCBzdGFydCwgZW5kKSk7CisgICAgUkVMRUFTRV9BTkRfUkVU
VVJOKHNjb3BlLCBKU1ZhbHVlOjplbmNvZGUoc3RyaW5nU2xpY2UoZXhlYywgdm0sIHN0cmluZywg
bGVuZ3RoLCBzdGFydCwgZW5kKSkpOwogfQogCiAvLyBSZXR1cm4gdHJ1ZSBpbiBjYXNlIG9mIGVh
cmx5IHJldHVybiAocmVzdWx0TGVuZ3RoIGdvdCB0byBsaW1pdExlbmd0aCkuCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdQcm90b3R5cGVJbmxpbmVzLmgg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdQcm90b3R5cGVJbmxpbmVzLmgK
aW5kZXggNzVjZThkMWFjODI5MjgyYWJlZTY5NjM3OTQ2MjcwYWZlZDI1NDQ5Ni4uYzUxZDg5MDFj
NGMwYWI2OGNhZWM3NTFmMGY3YzU2YWNmYWU0OGJhZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nUHJvdG90eXBlSW5saW5lcy5oCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ1Byb3RvdHlwZUlubGluZXMuaApAQCAtMzAsOSAr
MzAsOCBAQAogbmFtZXNwYWNlIEpTQyB7CiAKIHRlbXBsYXRlPHR5cGVuYW1lIE51bWJlclR5cGU+
Ci1BTFdBWVNfSU5MSU5FIEpTU3RyaW5nKiBzdHJpbmdTbGljZShWTSYgdm0sIFN0cmluZyYmIHN0
cmluZywgTnVtYmVyVHlwZSBzdGFydCwgTnVtYmVyVHlwZSBlbmQpCitBTFdBWVNfSU5MSU5FIEpT
U3RyaW5nKiBzdHJpbmdTbGljZShFeGVjU3RhdGUqIGV4ZWMsIFZNJiB2bSwgSlNTdHJpbmcqIHN0
cmluZywgaW50MzJfdCBsZW5ndGgsIE51bWJlclR5cGUgc3RhcnQsIE51bWJlclR5cGUgZW5kKQog
ewotICAgIGludDMyX3QgbGVuZ3RoID0gc3RyaW5nLmxlbmd0aCgpOwogICAgIE51bWJlclR5cGUg
ZnJvbSA9IHN0YXJ0IDwgMCA/IGxlbmd0aCArIHN0YXJ0IDogc3RhcnQ7CiAgICAgTnVtYmVyVHlw
ZSB0byA9IGVuZCA8IDAgPyBsZW5ndGggKyBlbmQgOiBlbmQ7CiAgICAgaWYgKHRvID4gZnJvbSAm
JiB0byA+IDAgJiYgZnJvbSA8IGxlbmd0aCkgewpAQCAtNDAsNyArMzksNyBAQCBBTFdBWVNfSU5M
SU5FIEpTU3RyaW5nKiBzdHJpbmdTbGljZShWTSYgdm0sIFN0cmluZyYmIHN0cmluZywgTnVtYmVy
VHlwZSBzdGFydCwgTgogICAgICAgICAgICAgZnJvbSA9IDA7CiAgICAgICAgIGlmICh0byA+IGxl
bmd0aCkKICAgICAgICAgICAgIHRvID0gbGVuZ3RoOwotICAgICAgICByZXR1cm4ganNTdWJzdHJp
bmcoJnZtLCBXVEZNb3ZlKHN0cmluZyksIHN0YXRpY19jYXN0PHVuc2lnbmVkPihmcm9tKSwgc3Rh
dGljX2Nhc3Q8dW5zaWduZWQ+KHRvKSAtIHN0YXRpY19jYXN0PHVuc2lnbmVkPihmcm9tKSk7Cisg
ICAgICAgIHJldHVybiBqc1N1YnN0cmluZyh2bSwgZXhlYywgc3RyaW5nLCBzdGF0aWNfY2FzdDx1
bnNpZ25lZD4oZnJvbSksIHN0YXRpY19jYXN0PHVuc2lnbmVkPih0bykgLSBzdGF0aWNfY2FzdDx1
bnNpZ25lZD4oZnJvbSkpOwogICAgIH0KICAgICByZXR1cm4ganNFbXB0eVN0cmluZygmdm0pOwog
fQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>369580</attachid>
            <date>2019-05-10 12:31:51 -0700</date>
            <delta_ts>2019-05-10 12:45:31 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-197765-20190510123151.patch</filename>
            <type>text/plain</type>
            <size>7201</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ1MTc4CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1
Yzc4OGMyMDNhYWU2NzcwYjA1ZWIzMzEzMWI4MmI5M2YzMGJlYTYzLi4xYWZlODRmMzIwMWVmMjVk
ZDA4YzQ4ZDMyNmQ3OGQ1MWEzODkyYjMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0NCBAQAorMjAxOS0wNS0xMCAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIFN0cmluZyBzdWJzdHJpbmcgb3BlcmF0aW9uIHNob3VsZCByZXR1
cm4gcm9wZXMgY29uc2lzdGVudGx5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xOTc3NjUKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzM3Njg5OTQ0Pgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEN1cnJlbnRs
eSB3ZSBoYXZlIGRpZmZlcmVudCBwb2xpY2llcyBwZXIgc3RyaW5nIHN1YnN0cmluZyBvcGVyYXRp
b24gZnVuY3Rpb24uCisKKyAgICAgICAgICAgIDEuIFN0cmluZyNzbGljZSByZXR1cm5zIHRoZSBy
ZXNvbHZlZCBub24tcm9wZSBzdHJpbmcKKyAgICAgICAgICAgIDIuIFN0cmluZyNzdWJzdHJpbmcg
cmV0dXJucyByb3BlIHN0cmluZworICAgICAgICAgICAgMy4gU3RyaW5nI3N1YnN0ciByZXR1cm5z
IHJvcGUgc3RyaW5nIGluIHJ1bnRpbWUgZnVuY3Rpb24sIG5vbi1yb3BlIHN0cmluZyBpbiBERkcg
YW5kIEZUTAorCisgICAgICAgIER1ZSB0byAoMyksIHdlIHNlZSBsYXJnZSBtZW1vcnkgdXNlIGlu
IHRoZSB0ZXN0ZWQgd2ViIHBhZ2VbMV0uIE5vbiByb3BlIHN1YnN0cmluZyBoYXZlIGEgcHJvYmxl
bS4KKyAgICAgICAgRmlyc3Qgb2YgYWxsLCB0aGF0IHJldHVybmVkIHN0cmluZyBzZWVtcyBub3Qg
dXNlZCBpbW1lZGlhdGVseS4gSXQgaXMgcG9zc2libGUgdGhhdCB0aGUgcmVzdWx0ZWQKKyAgICAg
ICAgc3RyaW5nIGlzIHVzZWQgYXMgYSBwYXJ0IG9mIHRoZSBvdGhlciByb3BlcyAobGlrZSwgeHh4
LnN1YnN0cmluZyguLi4pICsgIkhlbGxvIikuIFRvIGF2b2lkIHRoZQorICAgICAgICBlYWdlciBt
YXRlcmlhbGl6YXRpb24gb2YgdGhlIHN0cmluZywgd2UgYXJlIHVzaW5nIFN0cmluZ0ltcGw6OmNy
ZWF0ZVN1YnN0cmluZ1NoYXJpbmdJbXBsIGZvciB0aGUKKyAgICAgICAgcmVzdWx0ZWQgbm9uIHJv
cGUgc3RyaW5nLiBTdHJpbmdJbXBsOjpjcmVhdGVTdWJzdHJpbmdTaGFyaW5nSW1wbCBpcyBTdHJp
bmdJbXBsJ3Mgc3Vic3RyaW5nIGZlYXR1cmU6IHRoZQorICAgICAgICBzdWJzdHJpbmcgaXMgcG9p
bnRpbmcgdGhlIG93bmVyIFN0cmluZ0ltcGwuIFdoaWxlIHRoaXMgaGFzIG1lbW9yeSBzYXZpbmcg
YmVuZWZpdCwgaXQgY2FuIHJldGFpbiBvd25lcgorICAgICAgICBTdHJpbmdJbXBsIHNvIGxvbmcs
IGFuZCBpdCBjb3VsZCBrZWVwIHZlcnkgbGFyZ2Ugb3duZXIgU3RyaW5nSW1wbCBhbGl2ZS4KKwor
ICAgICAgICBUaGUgcHJvYmxlbSB3ZSBhcmUgYXR0ZW1wdGluZyB0byBzb2x2ZSB3aXRoIFN0cmlu
Z0ltcGw6OmNyZWF0ZVN1YnN0cmluZ1NoYXJpbmdJbXBsIGNhbiBiZSBzb2x2ZWQgYnkKKyAgICAg
ICAgdGhlIHJvcGUgc3RyaW5nIHNpbXBseS4gUm9wZSBzdHJpbmcgY2FuIHNoYXJlIHRoZSB1bmRl
cmx5aW5nIHN0cmluZy4gQW5kIGdvb2QgZmVhdHVyZSBvZiB0aGUgcm9wZQorICAgICAgICBzdHJp
bmcgaXMgdGhhdCwgd2hlbiByZXNvbHZpbmcgcm9wZSBzdHJpbmcsIHRoZSByb3BlIHN0cmluZyBh
bHdheXMgY3JlYXRlIGEgbmV3IFN0cmluZ0ltcGwgaW5zdGVhZCBvZgorICAgICAgICB1c2luZyBT
dHJpbmdJbXBsOjpjcmVhdGVTdWJzdHJpbmdTaGFyaW5nSW1wbC4gU28gd2UgYWxsb3cgdGhlIG93
bmVyIFN0cmluZ0ltcGwgdG8gYmUgZGVzdHJveWVkLiBBbmQgdGhpcworICAgICAgICByZXNvbHZp
bmcgb25seSBoYXBwZW5zIHdoZW4gd2UgYWN0dWFsbHkgd2FudCB0byB1c2UgdGhlIGNvbnRlbnQg
b2YgdGhlIHJvcGUgc3RyaW5nLiBJbiBhZGRpdGlvbiwgd2UgcmVjZW50bHkKKyAgICAgICAgc2hy
dW5rIHRoZSBzaXplb2YoSlNSb3BlU3RyaW5nKSBmcm9tIDQ4IHRvIDMyLCBzbyBKU1JvcGVTdHJp
bmcgaXMgY2hlYXAuCisKKyAgICAgICAgSW4gdGhpcyBwYXRjaCwgd2UgY2hhbmdlICgyKSBhbmQg
KDMpIHRvICgxKSwgdXNpbmcgcm9wZSBTdHJpbmcgYXMgYSByZXN1bHQgb2Ygc3Vic3RyaW5nIG9w
ZXJhdGlvbnMuCisKKyAgICAgICAgUkFNaWZpY2F0aW9uIGFuZCBKZXRTdHJlYW0yIGFyZSBuZXV0
cmFsLiBUaGUgd2ViIHBhZ2VbMV0gc2hvd3MgbGFyZ2UgbWVtb3J5IGZvb3RwcmludCBpbXByb3Zl
bWVudCBmcm9tIDc3Nk1CIHRvIDY4MU1CLgorCisgICAgICAgIFsxXTogaHR0cHM6Ly9iZXRhLm9i
c2VydmFibGVocS5jb20vQGxkZ2FyZG5lci9hc3NpZ25tZW50LTQtdmlzdWFsaXphdGlvbnMtYW5k
LW11bHRpcGxlLXZpZXdzCisKKyAgICAgICAgKiBkZmcvREZHT3BlcmF0aW9ucy5jcHA6CisgICAg
ICAgICogcnVudGltZS9TdHJpbmdQcm90b3R5cGUuY3BwOgorICAgICAgICAoSlNDOjpzdHJpbmdQ
cm90b0Z1bmNTbGljZSk6CisgICAgICAgICogcnVudGltZS9TdHJpbmdQcm90b3R5cGVJbmxpbmVz
Lmg6CisgICAgICAgIChKU0M6OnN0cmluZ1NsaWNlKToKKwogMjAxOS0wNS0wOSAgS2VpdGggTWls
bGVyICA8a2VpdGhfbWlsbGVyQGFwcGxlLmNvbT4KIAogICAgICAgICBGaXggY3Jhc2hlcyByZWxh
dGVkIHRvIHBvaW50ZXIgYXV0aGVudGljYXRpb24gZm9yIHByaW1pdGl2ZSBnaWdhY2FnZQpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdPcGVyYXRpb25zLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHT3BlcmF0aW9ucy5jcHAKaW5kZXggMmVhNGViMzZj
YmUwNDk3ZmY5OGM2OTJiMmVjOWEzOWVjZDM5MTY3Ny4uZWU1M2Q2MWQ3Zjc1NDY3ODFhOTA0Njc2
MGYyYTVhOWVmMzhiNmVkNSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9E
RkdPcGVyYXRpb25zLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR09wZXJh
dGlvbnMuY3BwCkBAIC0yMTk3LDI0ICsyMTk3LDE4IEBAIEpTQ2VsbCogSklUX09QRVJBVElPTiBv
cGVyYXRpb25TdHJpbmdTdWJzdHIoRXhlY1N0YXRlKiBleGVjLCBKU0NlbGwqIGNlbGwsIGludDMy
CiB7CiAgICAgVk0mIHZtID0gZXhlYy0+dm0oKTsKICAgICBOYXRpdmVDYWxsRnJhbWVUcmFjZXIg
dHJhY2VyKCZ2bSwgZXhlYyk7Ci0gICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NPUEUo
dm0pOwogCi0gICAgYXV0byBzdHJpbmcgPSBqc0Nhc3Q8SlNTdHJpbmcqPihjZWxsKS0+dmFsdWUo
ZXhlYyk7Ci0gICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgbnVsbHB0cik7Ci0gICAgcmV0
dXJuIGpzU3Vic3RyaW5nKCZ2bSwgc3RyaW5nLCBmcm9tLCBzcGFuKTsKKyAgICByZXR1cm4ganNT
dWJzdHJpbmcodm0sIGV4ZWMsIGpzQ2FzdDxKU1N0cmluZyo+KGNlbGwpLCBmcm9tLCBzcGFuKTsK
IH0KIAogSlNDZWxsKiBKSVRfT1BFUkFUSU9OIG9wZXJhdGlvblN0cmluZ1NsaWNlKEV4ZWNTdGF0
ZSogZXhlYywgSlNDZWxsKiBjZWxsLCBpbnQzMl90IHN0YXJ0LCBpbnQzMl90IGVuZCkKIHsKICAg
ICBWTSYgdm0gPSBleGVjLT52bSgpOwogICAgIE5hdGl2ZUNhbGxGcmFtZVRyYWNlciB0cmFjZXIo
JnZtLCBleGVjKTsKLSAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRSh2bSk7CiAK
LSAgICBhdXRvIHN0cmluZyA9IGpzQ2FzdDxKU1N0cmluZyo+KGNlbGwpLT52YWx1ZShleGVjKTsK
LSAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHNjb3BlLCBudWxscHRyKTsKKyAgICBKU1N0cmluZyog
c3RyaW5nID0gYXNTdHJpbmcoY2VsbCk7CiAgICAgc3RhdGljX2Fzc2VydChzdGF0aWNfY2FzdDx1
aW50NjRfdD4oSlNTdHJpbmc6Ok1heExlbmd0aCkgPD0gc3RhdGljX2Nhc3Q8dWludDY0X3Q+KHN0
ZDo6bnVtZXJpY19saW1pdHM8aW50MzJfdD46Om1heCgpKSwgIiIpOwotCi0gICAgcmV0dXJuIHN0
cmluZ1NsaWNlKHZtLCBXVEZNb3ZlKHN0cmluZyksIHN0YXJ0LCBlbmQpOworICAgIHJldHVybiBz
dHJpbmdTbGljZShleGVjLCB2bSwgc3RyaW5nLCBzdHJpbmctPmxlbmd0aCgpLCBzdGFydCwgZW5k
KTsKIH0KIAogSlNTdHJpbmcqIEpJVF9PUEVSQVRJT04gb3BlcmF0aW9uVG9Mb3dlckNhc2UoRXhl
Y1N0YXRlKiBleGVjLCBKU1N0cmluZyogc3RyaW5nLCB1aW50MzJfdCBmYWlsaW5nSW5kZXgpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdQcm90b3R5cGUu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nUHJvdG90eXBlLmNwcApp
bmRleCAzNDhiZjBkYWY1ZDBkOGQxMDMyOWNmYjkwZmQwNDhjMjE4YTJiM2U5Li5mNGRiOGZkNDg0
OGYxMWIzYjU1NTgwNjNlYjM2YmY2M2ExMWNkOWIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9TdHJpbmdQcm90b3R5cGUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL1N0cmluZ1Byb3RvdHlwZS5jcHAKQEAgLTExNDMsMjEgKzExNDMsMjEg
QEAgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBzdHJpbmdQcm90b0Z1bmNTbGljZShFeGVj
U3RhdGUqIGV4ZWMpCiAgICAgSlNWYWx1ZSB0aGlzVmFsdWUgPSBleGVjLT50aGlzVmFsdWUoKTsK
ICAgICBpZiAoIWNoZWNrT2JqZWN0Q29lcmNpYmxlKHRoaXNWYWx1ZSkpCiAgICAgICAgIHJldHVy
biB0aHJvd1ZNVHlwZUVycm9yKGV4ZWMsIHNjb3BlKTsKLSAgICBTdHJpbmcgcyA9IHRoaXNWYWx1
ZS50b1dURlN0cmluZyhleGVjKTsKKyAgICBKU1N0cmluZyogc3RyaW5nID0gdGhpc1ZhbHVlLnRv
U3RyaW5nKGV4ZWMpOwogICAgIFJFVFVSTl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1Zh
bHVlKCkpOwogCiAgICAgSlNWYWx1ZSBhMCA9IGV4ZWMtPmFyZ3VtZW50KDApOwogICAgIEpTVmFs
dWUgYTEgPSBleGVjLT5hcmd1bWVudCgxKTsKIAotICAgIGludCBsZW4gPSBzLmxlbmd0aCgpOwot
ICAgIFJFTEVBU0VfQVNTRVJUKGxlbiA+PSAwKTsKKyAgICBpbnQgbGVuZ3RoID0gc3RyaW5nLT5s
ZW5ndGgoKTsKKyAgICBSRUxFQVNFX0FTU0VSVChsZW5ndGggPj0gMCk7CiAKICAgICAvLyBUaGUg
YXJnIHByb2Nlc3NpbmcgaXMgdmVyeSBtdWNoIGxpa2UgQXJyYXlQcm90b0Z1bmM6OlNsaWNlCiAg
ICAgZG91YmxlIHN0YXJ0ID0gYTAudG9JbnRlZ2VyKGV4ZWMpOwogICAgIFJFVFVSTl9JRl9FWENF
UFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwotICAgIGRvdWJsZSBlbmQgPSBhMS5pc1Vu
ZGVmaW5lZCgpID8gbGVuIDogYTEudG9JbnRlZ2VyKGV4ZWMpOworICAgIGRvdWJsZSBlbmQgPSBh
MS5pc1VuZGVmaW5lZCgpID8gbGVuZ3RoIDogYTEudG9JbnRlZ2VyKGV4ZWMpOwogICAgIFJFVFVS
Tl9JRl9FWENFUFRJT04oc2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwotICAgIHJldHVybiBKU1Zh
bHVlOjplbmNvZGUoc3RyaW5nU2xpY2Uodm0sIFdURk1vdmUocyksIHN0YXJ0LCBlbmQpKTsKKyAg
ICBSRUxFQVNFX0FORF9SRVRVUk4oc2NvcGUsIEpTVmFsdWU6OmVuY29kZShzdHJpbmdTbGljZShl
eGVjLCB2bSwgc3RyaW5nLCBsZW5ndGgsIHN0YXJ0LCBlbmQpKSk7CiB9CiAKIC8vIFJldHVybiB0
cnVlIGluIGNhc2Ugb2YgZWFybHkgcmV0dXJuIChyZXN1bHRMZW5ndGggZ290IHRvIGxpbWl0TGVu
Z3RoKS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ1By
b3RvdHlwZUlubGluZXMuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1N0cmluZ1By
b3RvdHlwZUlubGluZXMuaAppbmRleCA3NWNlOGQxYWM4MjkyODJhYmVlNjk2Mzc5NDYyNzBhZmVk
MjU0NDk2Li5jNTFkODkwMWM0YzBhYjY4Y2FlYzc1MWYwZjdjNTZhY2ZhZTQ4YmFlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TdHJpbmdQcm90b3R5cGVJbmxpbmVz
LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3RyaW5nUHJvdG90eXBlSW5s
aW5lcy5oCkBAIC0zMCw5ICszMCw4IEBACiBuYW1lc3BhY2UgSlNDIHsKIAogdGVtcGxhdGU8dHlw
ZW5hbWUgTnVtYmVyVHlwZT4KLUFMV0FZU19JTkxJTkUgSlNTdHJpbmcqIHN0cmluZ1NsaWNlKFZN
JiB2bSwgU3RyaW5nJiYgc3RyaW5nLCBOdW1iZXJUeXBlIHN0YXJ0LCBOdW1iZXJUeXBlIGVuZCkK
K0FMV0FZU19JTkxJTkUgSlNTdHJpbmcqIHN0cmluZ1NsaWNlKEV4ZWNTdGF0ZSogZXhlYywgVk0m
IHZtLCBKU1N0cmluZyogc3RyaW5nLCBpbnQzMl90IGxlbmd0aCwgTnVtYmVyVHlwZSBzdGFydCwg
TnVtYmVyVHlwZSBlbmQpCiB7Ci0gICAgaW50MzJfdCBsZW5ndGggPSBzdHJpbmcubGVuZ3RoKCk7
CiAgICAgTnVtYmVyVHlwZSBmcm9tID0gc3RhcnQgPCAwID8gbGVuZ3RoICsgc3RhcnQgOiBzdGFy
dDsKICAgICBOdW1iZXJUeXBlIHRvID0gZW5kIDwgMCA/IGxlbmd0aCArIGVuZCA6IGVuZDsKICAg
ICBpZiAodG8gPiBmcm9tICYmIHRvID4gMCAmJiBmcm9tIDwgbGVuZ3RoKSB7CkBAIC00MCw3ICsz
OSw3IEBAIEFMV0FZU19JTkxJTkUgSlNTdHJpbmcqIHN0cmluZ1NsaWNlKFZNJiB2bSwgU3RyaW5n
JiYgc3RyaW5nLCBOdW1iZXJUeXBlIHN0YXJ0LCBOCiAgICAgICAgICAgICBmcm9tID0gMDsKICAg
ICAgICAgaWYgKHRvID4gbGVuZ3RoKQogICAgICAgICAgICAgdG8gPSBsZW5ndGg7Ci0gICAgICAg
IHJldHVybiBqc1N1YnN0cmluZygmdm0sIFdURk1vdmUoc3RyaW5nKSwgc3RhdGljX2Nhc3Q8dW5z
aWduZWQ+KGZyb20pLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4odG8pIC0gc3RhdGljX2Nhc3Q8dW5z
aWduZWQ+KGZyb20pKTsKKyAgICAgICAgcmV0dXJuIGpzU3Vic3RyaW5nKHZtLCBleGVjLCBzdHJp
bmcsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihmcm9tKSwgc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHRv
KSAtIHN0YXRpY19jYXN0PHVuc2lnbmVkPihmcm9tKSk7CiAgICAgfQogICAgIHJldHVybiBqc0Vt
cHR5U3RyaW5nKCZ2bSk7CiB9Cg==
</data>
<flag name="review"
          id="385663"
          type_id="1"
          status="+"
          setter="msaboff"
    />
          </attachment>
      

    </bug>

</bugzilla>