<?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>197291</bug_id>
          
          <creation_ts>2019-04-25 13:33:58 -0700</creation_ts>
          <short_desc>Add WTF::findIgnoringASCIICaseWithoutLength to replace strcasestr</short_desc>
          <delta_ts>2019-04-26 09:52:17 -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>Web Template Framework</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="Don Olmstead">don.olmstead</reporter>
          <assigned_to name="Don Olmstead">don.olmstead</assigned_to>
          <cc>annulen</cc>
    
    <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>dbates</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>ross.kirsling</cc>
    
    <cc>saam</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1530497</commentid>
    <comment_count>0</comment_count>
    <who name="Don Olmstead">don.olmstead</who>
    <bug_when>2019-04-25 13:33:58 -0700</bug_when>
    <thetext>Within the JSC tests strcasestr is used. This function is not available on Windows. To support compilation on Windows we should emulate strcasestr within WTF.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1530498</commentid>
    <comment_count>1</comment_count>
      <attachid>368260</attachid>
    <who name="Don Olmstead">don.olmstead</who>
    <bug_when>2019-04-25 13:37:26 -0700</bug_when>
    <thetext>Created attachment 368260
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1530507</commentid>
    <comment_count>2</comment_count>
      <attachid>368265</attachid>
    <who name="Don Olmstead">don.olmstead</who>
    <bug_when>2019-04-25 13:59:07 -0700</bug_when>
    <thetext>Created attachment 368265
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1530532</commentid>
    <comment_count>3</comment_count>
    <who name="Konstantin Tokarev">annulen</who>
    <bug_when>2019-04-25 14:59:59 -0700</bug_when>
    <thetext>(In reply to Don Olmstead from comment #0)
&gt; Within the JSC tests strcasestr is used. This function is not available on
&gt; Windows. To support compilation on Windows we should emulate strcasestr
&gt; within WTF.

It&apos;s more convenient to have such justifications right inside commit message (and changelog). When I personally make a patch which requires justification, I first write it inside git commit message and then copy it to bugzilla as a first comment</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1530534</commentid>
    <comment_count>4</comment_count>
      <attachid>368265</attachid>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2019-04-25 15:01:50 -0700</bug_when>
    <thetext>Comment on attachment 368265
Patch

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

&gt; Source/WTF/wtf/text/StringCommon.h:469
&gt; +inline size_t findIgnoringASCIICaseWithoutLength(const char* source, const char* matchCharacters)

Looking at the other *WithoutLength functions, I wonder if `source` should have a templated type (i.e. const StringClass&amp;)?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1530536</commentid>
    <comment_count>5</comment_count>
      <attachid>368265</attachid>
    <who name="Konstantin Tokarev">annulen</who>
    <bug_when>2019-04-25 15:06:09 -0700</bug_when>
    <thetext>Comment on attachment 368265
Patch

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

&gt;&gt; Source/WTF/wtf/text/StringCommon.h:469
&gt;&gt; +inline size_t findIgnoringASCIICaseWithoutLength(const char* source, const char* matchCharacters)
&gt; 
&gt; Looking at the other *WithoutLength functions, I wonder if `source` should have a templated type (i.e. const StringClass&amp;)?

AFAIU other *WithoutLength functions use StringClass as a placeholder of C++ string class like String or AtomicString, primitive const char* is always explicit there</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1530597</commentid>
    <comment_count>6</comment_count>
      <attachid>368265</attachid>
    <who name="Don Olmstead">don.olmstead</who>
    <bug_when>2019-04-25 18:38:35 -0700</bug_when>
    <thetext>Comment on attachment 368265
Patch

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

&gt;&gt;&gt; Source/WTF/wtf/text/StringCommon.h:469
&gt;&gt;&gt; +inline size_t findIgnoringASCIICaseWithoutLength(const char* source, const char* matchCharacters)
&gt;&gt; 
&gt;&gt; Looking at the other *WithoutLength functions, I wonder if `source` should have a templated type (i.e. const StringClass&amp;)?
&gt; 
&gt; AFAIU other *WithoutLength functions use StringClass as a placeholder of C++ string class like String or AtomicString, primitive const char* is always explicit there

Also strlen needs to be called.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1530715</commentid>
    <comment_count>7</comment_count>
      <attachid>368265</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-04-26 09:51:55 -0700</bug_when>
    <thetext>Comment on attachment 368265
Patch

Clearing flags on attachment: 368265

Committed r244694: &lt;https://trac.webkit.org/changeset/244694&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1530716</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-04-26 09:51:57 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1530718</commentid>
    <comment_count>9</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-04-26 09:52:17 -0700</bug_when>
    <thetext>&lt;rdar://problem/50245918&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>368260</attachid>
            <date>2019-04-25 13:37:26 -0700</date>
            <delta_ts>2019-04-25 13:59:07 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-197291.diff</filename>
            <type>text/plain</type>
            <size>7592</size>
            <attacher name="Don Olmstead">don.olmstead</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvdGVzdHMvdGVzdGFwaS5jcHAg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL3Rlc3RzL3Rlc3RhcGkuY3BwCmluZGV4IDk5MzUy
YzI1Yjk2Li5iY2EwNjA3MWMzOSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQ
SS90ZXN0cy90ZXN0YXBpLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL3Rlc3Rz
L3Rlc3RhcGkuY3BwCkBAIC0zNiw2ICszNiw3IEBACiAjaW5jbHVkZSA8d3RmL05vbmNvcHlhYmxl
Lmg+CiAjaW5jbHVkZSA8d3RmL051bWJlck9mQ29yZXMuaD4KICNpbmNsdWRlIDx3dGYvVmVjdG9y
Lmg+CisjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nQ29tbW9uLmg+CiAKIGV4dGVybiAiQyIgaW50
IHRlc3RDQVBJVmlhQ3BwKGNvbnN0IGNoYXIqIGZpbHRlcik7CiAKQEAgLTQ4NCwxMyArNDg1LDkg
QEAgaW50IHRlc3RDQVBJVmlhQ3BwKGNvbnN0IGNoYXIqIGZpbHRlcikKIAogICAgIERlcXVlPFJl
ZlB0cjxTaGFyZWRUYXNrPHZvaWQoVGVzdEFQSSYpPj4+IHRhc2tzOwogCi0jaWYgT1MoREFSV0lO
KQogICAgIGF1dG8gc2hvdWxkUnVuID0gWyZdIChjb25zdCBjaGFyKiB0ZXN0TmFtZSkgLT4gYm9v
bCB7Ci0gICAgICAgIHJldHVybiAhZmlsdGVyIHx8ICEhc3RyY2FzZXN0cih0ZXN0TmFtZSwgZmls
dGVyKTsKKyAgICAgICAgcmV0dXJuICFmaWx0ZXIgfHwgV1RGOjpmaW5kSWdub3JpbmdBU0NJSUNh
c2VXaXRob3V0TGVuZ3RoKHRlc3ROYW1lLCBmaWx0ZXIpICE9IFdURjo6bm90Rm91bmQ7CiAgICAg
fTsKLSNlbHNlCi0gICAgYXV0byBzaG91bGRSdW4gPSBbXSAoY29uc3QgY2hhciopIC0+IGJvb2wg
eyByZXR1cm4gdHJ1ZTsgfTsKLSNlbmRpZgogCiAgICAgUlVOKGJhc2ljU3ltYm9sKCkpOwogICAg
IFJVTihzeW1ib2xzVHlwZW9mKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L0NoYW5nZUxvZyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKaW5kZXggMjRkYjJm
NDM2NGEuLjM1OTk4MTk3ODI3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hh
bmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwx
OSBAQAorMjAxOS0wNC0yNSAgRG9uIE9sbXN0ZWFkICA8ZG9uLm9sbXN0ZWFkQHNvbnkuY29tPgor
CisgICAgICAgIEFkZCBXVEY6OmZpbmRJZ25vcmluZ0FTQ0lJQ2FzZVdpdGhvdXRMZW5ndGggdG8g
cmVwbGFjZSBzdHJjYXNlc3RyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xOTcyOTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBSZXBsYWNlIHVzZXMgb2Ygc3RyY2FzZXN0ciB3aXRoIFdURjo6ZmluZElnbm9y
aW5nQVNDSUlDYXNlV2l0aG91dExlbmd0aC4KKworICAgICAgICAqIEFQSS90ZXN0cy90ZXN0YXBp
LmNwcDoKKyAgICAgICAgKiBhc3NlbWJsZXIvdGVzdG1hc20uY3BwOgorICAgICAgICAqIGIzL2Fp
ci90ZXN0YWlyLmNwcDoKKyAgICAgICAgKiBiMy90ZXN0YjMuY3BwOgorICAgICAgICAqIGRmZy90
ZXN0ZGZnLmNwcDoKKyAgICAgICAgKiBkeW5iZW5jaC5jcHA6CisKIDIwMTktMDQtMjUgIEFsZXgg
Q2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KIAogICAgICAgICBGaXggbW9y
ZSBidWlsZHMgYWZ0ZXIgcjI0NDY1MwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2Fzc2VtYmxlci90ZXN0bWFzbS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVy
L3Rlc3RtYXNtLmNwcAppbmRleCA5OWU3MGExNmVkZS4uYWM1YzYzMjkxYjMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvdGVzdG1hc20uY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvdGVzdG1hc20uY3BwCkBAIC00MCw2ICs0MCw3IEBA
CiAjaW5jbHVkZSA8d3RmL0xvY2suaD4KICNpbmNsdWRlIDx3dGYvTnVtYmVyT2ZDb3Jlcy5oPgog
I2luY2x1ZGUgPHd0Zi9UaHJlYWRpbmcuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdDb21t
b24uaD4KIAogLy8gV2UgZG9uJ3QgaGF2ZSBhIE5PX1JFVFVSTl9EVUVfVE9fRVhJVCwgbm9yIHNo
b3VsZCB3ZS4gVGhhdCdzIHJpZGljdWxvdXMuCiBzdGF0aWMgYm9vbCBoaWRkZW5UcnV0aEJlY2F1
c2VOb1JldHVybklzU3R1cGlkKCkgeyByZXR1cm4gdHJ1ZTsgfQpAQCAtOTU1LDExICs5NTYsNyBA
QCB2b2lkIHJ1bihjb25zdCBjaGFyKiBmaWx0ZXIpCiAgICAgRGVxdWU8UmVmUHRyPFNoYXJlZFRh
c2s8dm9pZCgpPj4+IHRhc2tzOwogCiAgICAgYXV0byBzaG91bGRSdW4gPSBbJl0gKGNvbnN0IGNo
YXIqIHRlc3ROYW1lKSAtPiBib29sIHsKLSNpZiBPUyhVTklYKQotICAgICAgICByZXR1cm4gIWZp
bHRlciB8fCAhIXN0cmNhc2VzdHIodGVzdE5hbWUsIGZpbHRlcik7Ci0jZWxzZQotICAgICAgICBy
ZXR1cm4gIWZpbHRlciB8fCAhIXN0cnN0cih0ZXN0TmFtZSwgZmlsdGVyKTsKLSNlbmRpZgorICAg
ICAgICByZXR1cm4gIWZpbHRlciB8fCBXVEY6OmZpbmRJZ25vcmluZ0FTQ0lJQ2FzZVdpdGhvdXRM
ZW5ndGgodGVzdE5hbWUsIGZpbHRlcikgIT0gV1RGOjpub3RGb3VuZDsKICAgICB9OwogCiAgICAg
UlVOKHRlc3RTaW1wbGUoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMv
YWlyL3Rlc3RhaXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL2Fpci90ZXN0YWlyLmNw
cAppbmRleCBhNTY0YmM3M2M4ZS4uOWRjOTk2NmE5NDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9iMy9haXIvdGVzdGFpci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2IzL2Fpci90ZXN0YWlyLmNwcApAQCAtNDUsNiArNDUsNyBAQAogI2luY2x1ZGUgPHd0Zi9OdW1i
ZXJPZkNvcmVzLmg+CiAjaW5jbHVkZSA8d3RmL1N0ZE1hcC5oPgogI2luY2x1ZGUgPHd0Zi9UaHJl
YWRpbmcuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdDb21tb24uaD4KIAogLy8gV2UgZG9u
J3QgaGF2ZSBhIE5PX1JFVFVSTl9EVUVfVE9fRVhJVCwgbm9yIHNob3VsZCB3ZS4gVGhhdCdzIHJp
ZGljdWxvdXMuCiBzdGF0aWMgYm9vbCBoaWRkZW5UcnV0aEJlY2F1c2VOb1JldHVybklzU3R1cGlk
KCkgeyByZXR1cm4gdHJ1ZTsgfQpAQCAtMjA4MSw3ICsyMDgyLDcgQEAgdm9pZCBydW4oY29uc3Qg
Y2hhciogZmlsdGVyKQogICAgIERlcXVlPFJlZlB0cjxTaGFyZWRUYXNrPHZvaWQoKT4+PiB0YXNr
czsKIAogICAgIGF1dG8gc2hvdWxkUnVuID0gWyZdIChjb25zdCBjaGFyKiB0ZXN0TmFtZSkgLT4g
Ym9vbCB7Ci0gICAgICAgIHJldHVybiAhZmlsdGVyIHx8ICEhc3RyY2FzZXN0cih0ZXN0TmFtZSwg
ZmlsdGVyKTsKKyAgICAgICAgcmV0dXJuICFmaWx0ZXIgfHwgV1RGOjpmaW5kSWdub3JpbmdBU0NJ
SUNhc2VXaXRob3V0TGVuZ3RoKHRlc3ROYW1lLCBmaWx0ZXIpICE9IFdURjo6bm90Rm91bmQ7CiAg
ICAgfTsKIAogICAgIFJVTih0ZXN0U2ltcGxlKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2IzL3Rlc3RiMy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvdGVzdGIz
LmNwcAppbmRleCA0ZDY5NGY3OGI5ZS4uZmYzYjNiNTM4MzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9iMy90ZXN0YjMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9i
My90ZXN0YjMuY3BwCkBAIC03OCw2ICs3OCw3IEBACiAjaW5jbHVkZSA8d3RmL051bWJlck9mQ29y
ZXMuaD4KICNpbmNsdWRlIDx3dGYvU3RkTGlzdC5oPgogI2luY2x1ZGUgPHd0Zi9UaHJlYWRpbmcu
aD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdDb21tb24uaD4KIAogLy8gV2UgZG9uJ3QgaGF2
ZSBhIE5PX1JFVFVSTl9EVUVfVE9fRVhJVCwgbm9yIHNob3VsZCB3ZS4gVGhhdCdzIHJpZGljdWxv
dXMuCiBzdGF0aWMgYm9vbCBoaWRkZW5UcnV0aEJlY2F1c2VOb1JldHVybklzU3R1cGlkKCkgeyBy
ZXR1cm4gdHJ1ZTsgfQpAQCAtMTcxNTYsNyArMTcxNTcsNyBAQCB2b2lkIHJ1bihjb25zdCBjaGFy
KiBmaWx0ZXIpCiAgICAgRGVxdWU8UmVmUHRyPFNoYXJlZFRhc2s8dm9pZCgpPj4+IHRhc2tzOwog
CiAgICAgYXV0byBzaG91bGRSdW4gPSBbJl0gKGNvbnN0IGNoYXIqIHRlc3ROYW1lKSAtPiBib29s
IHsKLSAgICAgICAgcmV0dXJuICFmaWx0ZXIgfHwgISFzdHJjYXNlc3RyKHRlc3ROYW1lLCBmaWx0
ZXIpOworICAgICAgICByZXR1cm4gIWZpbHRlciB8fCBXVEY6OmZpbmRJZ25vcmluZ0FTQ0lJQ2Fz
ZVdpdGhvdXRMZW5ndGgodGVzdE5hbWUsIGZpbHRlcikgIT0gV1RGOjpub3RGb3VuZDsKICAgICB9
OwogCiAgICAgUlVOX05PVyh0ZXN0VGVybWluYWxQYXRjaHBvaW50VGhhdE5lZWRzVG9CZVNwaWxs
ZWQyKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy90ZXN0ZGZnLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvdGVzdGRmZy5jcHAKaW5kZXggYjYwNGZkMTA0
MWUuLjUzMzVlNjQ2NjFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL3Rl
c3RkZmcuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvdGVzdGRmZy5jcHAKQEAg
LTMxLDYgKzMxLDcgQEAKICNpbmNsdWRlICJERkdBYnN0cmFjdFZhbHVlLmgiCiAjaW5jbHVkZSAi
SW5pdGlhbGl6ZVRocmVhZGluZy5oIgogI2luY2x1ZGUgPHd0Zi9EYXRhTG9nLmg+CisjaW5jbHVk
ZSA8d3RmL3RleHQvU3RyaW5nQ29tbW9uLmg+CiAKIC8vIFdlIGRvbid0IGhhdmUgYSBOT19SRVRV
Uk5fRFVFX1RPX0VYSVQsIG5vciBzaG91bGQgd2UuIFRoYXQncyByaWRpY3Vsb3VzLgogc3RhdGlj
IGJvb2wgaGlkZGVuVHJ1dGhCZWNhdXNlTm9SZXR1cm5Jc1N0dXBpZCgpIHsgcmV0dXJuIHRydWU7
IH0KQEAgLTgwLDcgKzgxLDcgQEAgc3RhdGljIHZvaWQgdGVzdEVtcHR5VmFsdWVEb2VzTm90VmFs
aWRhdGVXaXRoSGVhcFRvcCgpCiB2b2lkIHJ1bihjb25zdCBjaGFyKiBmaWx0ZXIpCiB7CiAgICAg
YXV0byBzaG91bGRSdW4gPSBbJl0gKGNvbnN0IGNoYXIqIHRlc3ROYW1lKSAtPiBib29sIHsKLSAg
ICAgICAgcmV0dXJuICFmaWx0ZXIgfHwgISFzdHJjYXNlc3RyKHRlc3ROYW1lLCBmaWx0ZXIpOwor
ICAgICAgICByZXR1cm4gIWZpbHRlciB8fCBXVEY6OmZpbmRJZ25vcmluZ0FTQ0lJQ2FzZVdpdGhv
dXRMZW5ndGgodGVzdE5hbWUsIGZpbHRlcikgIT0gV1RGOjpub3RGb3VuZDsKICAgICB9OwogCiAg
ICAgUlVOX05PVyh0ZXN0RW1wdHlWYWx1ZURvZXNOb3RWYWxpZGF0ZVdpdGhIZWFwVG9wKCkpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2R5bmJlbmNoLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9keW5iZW5jaC5jcHAKaW5kZXggYmI5ZDNiNTkwYzAuLjBjN2U0Yzc5MzBl
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZHluYmVuY2guY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9keW5iZW5jaC5jcHAKQEAgLTM0LDYgKzM0LDcgQEAKICNpbmNs
dWRlICJKU09iamVjdC5oIgogI2luY2x1ZGUgIlZNLmgiCiAjaW5jbHVkZSA8d3RmL01haW5UaHJl
YWQuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdDb21tb24uaD4KIAogdXNpbmcgbmFtZXNw
YWNlIEpTQzsKIApAQCAtNTQsNyArNTUsNyBAQCB1bnNpZ25lZCByZXF1ZXN0ZWRJdGVyYXRpb25D
b3VudDsKIHRlbXBsYXRlPHR5cGVuYW1lIENhbGxiYWNrPgogTkVWRVJfSU5MSU5FIHZvaWQgYmVu
Y2htYXJrSW1wbChjb25zdCBjaGFyKiBuYW1lLCB1bnNpZ25lZCBpdGVyYXRpb25Db3VudCwgY29u
c3QgQ2FsbGJhY2smIGNhbGxiYWNrKQogewotICAgIGlmIChuYW1lRmlsdGVyICYmICFzdHJjYXNl
c3RyKG5hbWUsIG5hbWVGaWx0ZXIpKQorICAgIGlmIChuYW1lRmlsdGVyICYmIFdURjo6ZmluZEln
bm9yaW5nQVNDSUlDYXNlV2l0aG91dExlbmd0aCh0ZXN0TmFtZSwgZmlsdGVyKSA9PSBXVEY6Om5v
dEZvdW5kKQogICAgICAgICByZXR1cm47CiAKICAgICBpZiAocmVxdWVzdGVkSXRlcmF0aW9uQ291
bnQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5nZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdl
TG9nCmluZGV4IDcwYmYwYzVmYzUwLi5iYzAyYzliOWFkYyAxMDA2NDQKLS0tIGEvU291cmNlL1dU
Ri9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dURi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAor
MjAxOS0wNC0yNSAgRG9uIE9sbXN0ZWFkICA8ZG9uLm9sbXN0ZWFkQHNvbnkuY29tPgorCisgICAg
ICAgIEFkZCBXVEY6OmZpbmRJZ25vcmluZ0FTQ0lJQ2FzZVdpdGhvdXRMZW5ndGggdG8gcmVwbGFj
ZSBzdHJjYXNlc3RyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xOTcyOTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBBZGRzIGFuIGltcGxlbWVudGF0aW9uIG9mIHN0cmNhc2VzdHIgd2l0aGluIFdURi4KKwor
ICAgICAgICAqIHd0Zi90ZXh0L1N0cmluZ0NvbW1vbi5oOgorICAgICAgICAoV1RGOjpmaW5kSWdu
b3JpbmdBU0NJSUNhc2VXaXRob3V0TGVuZ3RoKToKKwogMjAxOS0wNC0yNSAgQWxleCBDaHJpc3Rl
bnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgogCiAgICAgICAgIEZpeCBIaWdoIFNpZXJy
YSBidWlsZCBhZnRlciByMjQ0NjUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1N0
cmluZ0NvbW1vbi5oIGIvU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdDb21tb24uaAppbmRleCBm
NzU2YTE0OTVhMS4uNmE3ZGY5NjZkODggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL3RleHQv
U3RyaW5nQ29tbW9uLmgKKysrIGIvU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdDb21tb24uaApA
QCAtNDY2LDYgKzQ2NiwxNCBAQCBzaXplX3QgZmluZElnbm9yaW5nQVNDSUlDYXNlKGNvbnN0IFNl
YXJjaENoYXJhY3RlclR5cGUqIHNvdXJjZSwgY29uc3QgTWF0Y2hDaGFyYQogICAgIHJldHVybiBu
b3RGb3VuZDsKIH0KIAoraW5saW5lIHNpemVfdCBmaW5kSWdub3JpbmdBU0NJSUNhc2VXaXRob3V0
TGVuZ3RoKGNvbnN0IGNoYXIqIHNvdXJjZSwgY29uc3QgY2hhciogbWF0Y2hDaGFyYWN0ZXJzKQor
eworICAgIHVuc2lnbmVkIHNlYXJjaExlbmd0aCA9IHN0cmxlbihzb3VyY2UpOworICAgIHVuc2ln
bmVkIG1hdGNoTGVuZ3RoID0gc3RybGVuKG1hdGNoQ2hhcmFjdGVycyk7CisKKyAgICByZXR1cm4g
bWF0Y2hMZW5ndGggPCBzZWFyY2hMZW5ndGggPyBmaW5kSWdub3JpbmdBU0NJSUNhc2Uoc291cmNl
LCBtYXRjaENoYXJhY3RlcnMsIDAsIHNlYXJjaExlbmd0aCwgbWF0Y2hMZW5ndGgpIDogbm90Rm91
bmQ7Cit9CisKIHRlbXBsYXRlPHR5cGVuYW1lIFN0cmluZ0NsYXNzQSwgdHlwZW5hbWUgU3RyaW5n
Q2xhc3NCPgogc2l6ZV90IGZpbmRJZ25vcmluZ0FTQ0lJQ2FzZShjb25zdCBTdHJpbmdDbGFzc0Em
IHNvdXJjZSwgY29uc3QgU3RyaW5nQ2xhc3NCJiBzdHJpbmdUb0ZpbmQsIHVuc2lnbmVkIHN0YXJ0
T2Zmc2V0KQogewo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>368265</attachid>
            <date>2019-04-25 13:59:07 -0700</date>
            <delta_ts>2019-04-26 09:51:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-197291.diff</filename>
            <type>text/plain</type>
            <size>7592</size>
            <attacher name="Don Olmstead">don.olmstead</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvdGVzdHMvdGVzdGFwaS5jcHAg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL3Rlc3RzL3Rlc3RhcGkuY3BwCmluZGV4IDk5MzUy
YzI1Yjk2Li5iY2EwNjA3MWMzOSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQ
SS90ZXN0cy90ZXN0YXBpLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL3Rlc3Rz
L3Rlc3RhcGkuY3BwCkBAIC0zNiw2ICszNiw3IEBACiAjaW5jbHVkZSA8d3RmL05vbmNvcHlhYmxl
Lmg+CiAjaW5jbHVkZSA8d3RmL051bWJlck9mQ29yZXMuaD4KICNpbmNsdWRlIDx3dGYvVmVjdG9y
Lmg+CisjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nQ29tbW9uLmg+CiAKIGV4dGVybiAiQyIgaW50
IHRlc3RDQVBJVmlhQ3BwKGNvbnN0IGNoYXIqIGZpbHRlcik7CiAKQEAgLTQ4NCwxMyArNDg1LDkg
QEAgaW50IHRlc3RDQVBJVmlhQ3BwKGNvbnN0IGNoYXIqIGZpbHRlcikKIAogICAgIERlcXVlPFJl
ZlB0cjxTaGFyZWRUYXNrPHZvaWQoVGVzdEFQSSYpPj4+IHRhc2tzOwogCi0jaWYgT1MoREFSV0lO
KQogICAgIGF1dG8gc2hvdWxkUnVuID0gWyZdIChjb25zdCBjaGFyKiB0ZXN0TmFtZSkgLT4gYm9v
bCB7Ci0gICAgICAgIHJldHVybiAhZmlsdGVyIHx8ICEhc3RyY2FzZXN0cih0ZXN0TmFtZSwgZmls
dGVyKTsKKyAgICAgICAgcmV0dXJuICFmaWx0ZXIgfHwgV1RGOjpmaW5kSWdub3JpbmdBU0NJSUNh
c2VXaXRob3V0TGVuZ3RoKHRlc3ROYW1lLCBmaWx0ZXIpICE9IFdURjo6bm90Rm91bmQ7CiAgICAg
fTsKLSNlbHNlCi0gICAgYXV0byBzaG91bGRSdW4gPSBbXSAoY29uc3QgY2hhciopIC0+IGJvb2wg
eyByZXR1cm4gdHJ1ZTsgfTsKLSNlbmRpZgogCiAgICAgUlVOKGJhc2ljU3ltYm9sKCkpOwogICAg
IFJVTihzeW1ib2xzVHlwZW9mKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L0NoYW5nZUxvZyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKaW5kZXggMjRkYjJm
NDM2NGEuLjM1OTk4MTk3ODI3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hh
bmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwx
OSBAQAorMjAxOS0wNC0yNSAgRG9uIE9sbXN0ZWFkICA8ZG9uLm9sbXN0ZWFkQHNvbnkuY29tPgor
CisgICAgICAgIEFkZCBXVEY6OmZpbmRJZ25vcmluZ0FTQ0lJQ2FzZVdpdGhvdXRMZW5ndGggdG8g
cmVwbGFjZSBzdHJjYXNlc3RyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xOTcyOTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBSZXBsYWNlIHVzZXMgb2Ygc3RyY2FzZXN0ciB3aXRoIFdURjo6ZmluZElnbm9y
aW5nQVNDSUlDYXNlV2l0aG91dExlbmd0aC4KKworICAgICAgICAqIEFQSS90ZXN0cy90ZXN0YXBp
LmNwcDoKKyAgICAgICAgKiBhc3NlbWJsZXIvdGVzdG1hc20uY3BwOgorICAgICAgICAqIGIzL2Fp
ci90ZXN0YWlyLmNwcDoKKyAgICAgICAgKiBiMy90ZXN0YjMuY3BwOgorICAgICAgICAqIGRmZy90
ZXN0ZGZnLmNwcDoKKyAgICAgICAgKiBkeW5iZW5jaC5jcHA6CisKIDIwMTktMDQtMjUgIEFsZXgg
Q2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KIAogICAgICAgICBGaXggbW9y
ZSBidWlsZHMgYWZ0ZXIgcjI0NDY1MwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2Fzc2VtYmxlci90ZXN0bWFzbS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVy
L3Rlc3RtYXNtLmNwcAppbmRleCA5OWU3MGExNmVkZS4uYWM1YzYzMjkxYjMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvdGVzdG1hc20uY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvdGVzdG1hc20uY3BwCkBAIC00MCw2ICs0MCw3IEBA
CiAjaW5jbHVkZSA8d3RmL0xvY2suaD4KICNpbmNsdWRlIDx3dGYvTnVtYmVyT2ZDb3Jlcy5oPgog
I2luY2x1ZGUgPHd0Zi9UaHJlYWRpbmcuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdDb21t
b24uaD4KIAogLy8gV2UgZG9uJ3QgaGF2ZSBhIE5PX1JFVFVSTl9EVUVfVE9fRVhJVCwgbm9yIHNo
b3VsZCB3ZS4gVGhhdCdzIHJpZGljdWxvdXMuCiBzdGF0aWMgYm9vbCBoaWRkZW5UcnV0aEJlY2F1
c2VOb1JldHVybklzU3R1cGlkKCkgeyByZXR1cm4gdHJ1ZTsgfQpAQCAtOTU1LDExICs5NTYsNyBA
QCB2b2lkIHJ1bihjb25zdCBjaGFyKiBmaWx0ZXIpCiAgICAgRGVxdWU8UmVmUHRyPFNoYXJlZFRh
c2s8dm9pZCgpPj4+IHRhc2tzOwogCiAgICAgYXV0byBzaG91bGRSdW4gPSBbJl0gKGNvbnN0IGNo
YXIqIHRlc3ROYW1lKSAtPiBib29sIHsKLSNpZiBPUyhVTklYKQotICAgICAgICByZXR1cm4gIWZp
bHRlciB8fCAhIXN0cmNhc2VzdHIodGVzdE5hbWUsIGZpbHRlcik7Ci0jZWxzZQotICAgICAgICBy
ZXR1cm4gIWZpbHRlciB8fCAhIXN0cnN0cih0ZXN0TmFtZSwgZmlsdGVyKTsKLSNlbmRpZgorICAg
ICAgICByZXR1cm4gIWZpbHRlciB8fCBXVEY6OmZpbmRJZ25vcmluZ0FTQ0lJQ2FzZVdpdGhvdXRM
ZW5ndGgodGVzdE5hbWUsIGZpbHRlcikgIT0gV1RGOjpub3RGb3VuZDsKICAgICB9OwogCiAgICAg
UlVOKHRlc3RTaW1wbGUoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMv
YWlyL3Rlc3RhaXIuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL2Fpci90ZXN0YWlyLmNw
cAppbmRleCBhNTY0YmM3M2M4ZS4uOWRjOTk2NmE5NDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9iMy9haXIvdGVzdGFpci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2IzL2Fpci90ZXN0YWlyLmNwcApAQCAtNDUsNiArNDUsNyBAQAogI2luY2x1ZGUgPHd0Zi9OdW1i
ZXJPZkNvcmVzLmg+CiAjaW5jbHVkZSA8d3RmL1N0ZE1hcC5oPgogI2luY2x1ZGUgPHd0Zi9UaHJl
YWRpbmcuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdDb21tb24uaD4KIAogLy8gV2UgZG9u
J3QgaGF2ZSBhIE5PX1JFVFVSTl9EVUVfVE9fRVhJVCwgbm9yIHNob3VsZCB3ZS4gVGhhdCdzIHJp
ZGljdWxvdXMuCiBzdGF0aWMgYm9vbCBoaWRkZW5UcnV0aEJlY2F1c2VOb1JldHVybklzU3R1cGlk
KCkgeyByZXR1cm4gdHJ1ZTsgfQpAQCAtMjA4MSw3ICsyMDgyLDcgQEAgdm9pZCBydW4oY29uc3Qg
Y2hhciogZmlsdGVyKQogICAgIERlcXVlPFJlZlB0cjxTaGFyZWRUYXNrPHZvaWQoKT4+PiB0YXNr
czsKIAogICAgIGF1dG8gc2hvdWxkUnVuID0gWyZdIChjb25zdCBjaGFyKiB0ZXN0TmFtZSkgLT4g
Ym9vbCB7Ci0gICAgICAgIHJldHVybiAhZmlsdGVyIHx8ICEhc3RyY2FzZXN0cih0ZXN0TmFtZSwg
ZmlsdGVyKTsKKyAgICAgICAgcmV0dXJuICFmaWx0ZXIgfHwgV1RGOjpmaW5kSWdub3JpbmdBU0NJ
SUNhc2VXaXRob3V0TGVuZ3RoKHRlc3ROYW1lLCBmaWx0ZXIpICE9IFdURjo6bm90Rm91bmQ7CiAg
ICAgfTsKIAogICAgIFJVTih0ZXN0U2ltcGxlKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2IzL3Rlc3RiMy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvdGVzdGIz
LmNwcAppbmRleCA0ZDY5NGY3OGI5ZS4uZmYzYjNiNTM4MzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9iMy90ZXN0YjMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9i
My90ZXN0YjMuY3BwCkBAIC03OCw2ICs3OCw3IEBACiAjaW5jbHVkZSA8d3RmL051bWJlck9mQ29y
ZXMuaD4KICNpbmNsdWRlIDx3dGYvU3RkTGlzdC5oPgogI2luY2x1ZGUgPHd0Zi9UaHJlYWRpbmcu
aD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdDb21tb24uaD4KIAogLy8gV2UgZG9uJ3QgaGF2
ZSBhIE5PX1JFVFVSTl9EVUVfVE9fRVhJVCwgbm9yIHNob3VsZCB3ZS4gVGhhdCdzIHJpZGljdWxv
dXMuCiBzdGF0aWMgYm9vbCBoaWRkZW5UcnV0aEJlY2F1c2VOb1JldHVybklzU3R1cGlkKCkgeyBy
ZXR1cm4gdHJ1ZTsgfQpAQCAtMTcxNTYsNyArMTcxNTcsNyBAQCB2b2lkIHJ1bihjb25zdCBjaGFy
KiBmaWx0ZXIpCiAgICAgRGVxdWU8UmVmUHRyPFNoYXJlZFRhc2s8dm9pZCgpPj4+IHRhc2tzOwog
CiAgICAgYXV0byBzaG91bGRSdW4gPSBbJl0gKGNvbnN0IGNoYXIqIHRlc3ROYW1lKSAtPiBib29s
IHsKLSAgICAgICAgcmV0dXJuICFmaWx0ZXIgfHwgISFzdHJjYXNlc3RyKHRlc3ROYW1lLCBmaWx0
ZXIpOworICAgICAgICByZXR1cm4gIWZpbHRlciB8fCBXVEY6OmZpbmRJZ25vcmluZ0FTQ0lJQ2Fz
ZVdpdGhvdXRMZW5ndGgodGVzdE5hbWUsIGZpbHRlcikgIT0gV1RGOjpub3RGb3VuZDsKICAgICB9
OwogCiAgICAgUlVOX05PVyh0ZXN0VGVybWluYWxQYXRjaHBvaW50VGhhdE5lZWRzVG9CZVNwaWxs
ZWQyKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy90ZXN0ZGZnLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvdGVzdGRmZy5jcHAKaW5kZXggYjYwNGZkMTA0
MWUuLjUzMzVlNjQ2NjFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL3Rl
c3RkZmcuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvdGVzdGRmZy5jcHAKQEAg
LTMxLDYgKzMxLDcgQEAKICNpbmNsdWRlICJERkdBYnN0cmFjdFZhbHVlLmgiCiAjaW5jbHVkZSAi
SW5pdGlhbGl6ZVRocmVhZGluZy5oIgogI2luY2x1ZGUgPHd0Zi9EYXRhTG9nLmg+CisjaW5jbHVk
ZSA8d3RmL3RleHQvU3RyaW5nQ29tbW9uLmg+CiAKIC8vIFdlIGRvbid0IGhhdmUgYSBOT19SRVRV
Uk5fRFVFX1RPX0VYSVQsIG5vciBzaG91bGQgd2UuIFRoYXQncyByaWRpY3Vsb3VzLgogc3RhdGlj
IGJvb2wgaGlkZGVuVHJ1dGhCZWNhdXNlTm9SZXR1cm5Jc1N0dXBpZCgpIHsgcmV0dXJuIHRydWU7
IH0KQEAgLTgwLDcgKzgxLDcgQEAgc3RhdGljIHZvaWQgdGVzdEVtcHR5VmFsdWVEb2VzTm90VmFs
aWRhdGVXaXRoSGVhcFRvcCgpCiB2b2lkIHJ1bihjb25zdCBjaGFyKiBmaWx0ZXIpCiB7CiAgICAg
YXV0byBzaG91bGRSdW4gPSBbJl0gKGNvbnN0IGNoYXIqIHRlc3ROYW1lKSAtPiBib29sIHsKLSAg
ICAgICAgcmV0dXJuICFmaWx0ZXIgfHwgISFzdHJjYXNlc3RyKHRlc3ROYW1lLCBmaWx0ZXIpOwor
ICAgICAgICByZXR1cm4gIWZpbHRlciB8fCBXVEY6OmZpbmRJZ25vcmluZ0FTQ0lJQ2FzZVdpdGhv
dXRMZW5ndGgodGVzdE5hbWUsIGZpbHRlcikgIT0gV1RGOjpub3RGb3VuZDsKICAgICB9OwogCiAg
ICAgUlVOX05PVyh0ZXN0RW1wdHlWYWx1ZURvZXNOb3RWYWxpZGF0ZVdpdGhIZWFwVG9wKCkpOwpk
aWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2R5bmJlbmNoLmNwcCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9keW5iZW5jaC5jcHAKaW5kZXggYmI5ZDNiNTkwYzAuLmI3OTBhMTdlYmI3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZHluYmVuY2guY3BwCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9keW5iZW5jaC5jcHAKQEAgLTM0LDYgKzM0LDcgQEAKICNpbmNs
dWRlICJKU09iamVjdC5oIgogI2luY2x1ZGUgIlZNLmgiCiAjaW5jbHVkZSA8d3RmL01haW5UaHJl
YWQuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdDb21tb24uaD4KIAogdXNpbmcgbmFtZXNw
YWNlIEpTQzsKIApAQCAtNTQsNyArNTUsNyBAQCB1bnNpZ25lZCByZXF1ZXN0ZWRJdGVyYXRpb25D
b3VudDsKIHRlbXBsYXRlPHR5cGVuYW1lIENhbGxiYWNrPgogTkVWRVJfSU5MSU5FIHZvaWQgYmVu
Y2htYXJrSW1wbChjb25zdCBjaGFyKiBuYW1lLCB1bnNpZ25lZCBpdGVyYXRpb25Db3VudCwgY29u
c3QgQ2FsbGJhY2smIGNhbGxiYWNrKQogewotICAgIGlmIChuYW1lRmlsdGVyICYmICFzdHJjYXNl
c3RyKG5hbWUsIG5hbWVGaWx0ZXIpKQorICAgIGlmIChuYW1lRmlsdGVyICYmIFdURjo6ZmluZEln
bm9yaW5nQVNDSUlDYXNlV2l0aG91dExlbmd0aChuYW1lLCBuYW1lRmlsdGVyKSA9PSBXVEY6Om5v
dEZvdW5kKQogICAgICAgICByZXR1cm47CiAKICAgICBpZiAocmVxdWVzdGVkSXRlcmF0aW9uQ291
bnQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5nZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdl
TG9nCmluZGV4IDcwYmYwYzVmYzUwLi5iYzAyYzliOWFkYyAxMDA2NDQKLS0tIGEvU291cmNlL1dU
Ri9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dURi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAor
MjAxOS0wNC0yNSAgRG9uIE9sbXN0ZWFkICA8ZG9uLm9sbXN0ZWFkQHNvbnkuY29tPgorCisgICAg
ICAgIEFkZCBXVEY6OmZpbmRJZ25vcmluZ0FTQ0lJQ2FzZVdpdGhvdXRMZW5ndGggdG8gcmVwbGFj
ZSBzdHJjYXNlc3RyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xOTcyOTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBBZGRzIGFuIGltcGxlbWVudGF0aW9uIG9mIHN0cmNhc2VzdHIgd2l0aGluIFdURi4KKwor
ICAgICAgICAqIHd0Zi90ZXh0L1N0cmluZ0NvbW1vbi5oOgorICAgICAgICAoV1RGOjpmaW5kSWdu
b3JpbmdBU0NJSUNhc2VXaXRob3V0TGVuZ3RoKToKKwogMjAxOS0wNC0yNSAgQWxleCBDaHJpc3Rl
bnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgogCiAgICAgICAgIEZpeCBIaWdoIFNpZXJy
YSBidWlsZCBhZnRlciByMjQ0NjUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1N0
cmluZ0NvbW1vbi5oIGIvU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdDb21tb24uaAppbmRleCBm
NzU2YTE0OTVhMS4uNmE3ZGY5NjZkODggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL3RleHQv
U3RyaW5nQ29tbW9uLmgKKysrIGIvU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdDb21tb24uaApA
QCAtNDY2LDYgKzQ2NiwxNCBAQCBzaXplX3QgZmluZElnbm9yaW5nQVNDSUlDYXNlKGNvbnN0IFNl
YXJjaENoYXJhY3RlclR5cGUqIHNvdXJjZSwgY29uc3QgTWF0Y2hDaGFyYQogICAgIHJldHVybiBu
b3RGb3VuZDsKIH0KIAoraW5saW5lIHNpemVfdCBmaW5kSWdub3JpbmdBU0NJSUNhc2VXaXRob3V0
TGVuZ3RoKGNvbnN0IGNoYXIqIHNvdXJjZSwgY29uc3QgY2hhciogbWF0Y2hDaGFyYWN0ZXJzKQor
eworICAgIHVuc2lnbmVkIHNlYXJjaExlbmd0aCA9IHN0cmxlbihzb3VyY2UpOworICAgIHVuc2ln
bmVkIG1hdGNoTGVuZ3RoID0gc3RybGVuKG1hdGNoQ2hhcmFjdGVycyk7CisKKyAgICByZXR1cm4g
bWF0Y2hMZW5ndGggPCBzZWFyY2hMZW5ndGggPyBmaW5kSWdub3JpbmdBU0NJSUNhc2Uoc291cmNl
LCBtYXRjaENoYXJhY3RlcnMsIDAsIHNlYXJjaExlbmd0aCwgbWF0Y2hMZW5ndGgpIDogbm90Rm91
bmQ7Cit9CisKIHRlbXBsYXRlPHR5cGVuYW1lIFN0cmluZ0NsYXNzQSwgdHlwZW5hbWUgU3RyaW5n
Q2xhc3NCPgogc2l6ZV90IGZpbmRJZ25vcmluZ0FTQ0lJQ2FzZShjb25zdCBTdHJpbmdDbGFzc0Em
IHNvdXJjZSwgY29uc3QgU3RyaW5nQ2xhc3NCJiBzdHJpbmdUb0ZpbmQsIHVuc2lnbmVkIHN0YXJ0
T2Zmc2V0KQogewo=
</data>

          </attachment>
      

    </bug>

</bugzilla>