<?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>233520</bug_id>
          
          <creation_ts>2021-11-26 04:50:21 -0800</creation_ts>
          <short_desc>[:has() pseudo-class] Don&apos;t traverse descendants during selector matching unless needed</short_desc>
          <delta_ts>2021-11-26 07:14:18 -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>CSS</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="Antti Koivisto">koivisto</reporter>
          <assigned_to name="Antti Koivisto">koivisto</assigned_to>
          <cc>allan.jensen</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1817944</commentid>
    <comment_count>0</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2021-11-26 04:50:21 -0800</bug_when>
    <thetext>It is sufficient to traverse direct children to match something like :has(&gt; foo).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1817946</commentid>
    <comment_count>1</comment_count>
      <attachid>445189</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2021-11-26 05:06:30 -0800</bug_when>
    <thetext>Created attachment 445189
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1817970</commentid>
    <comment_count>2</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-11-26 07:13:11 -0800</bug_when>
    <thetext>Committed r286180 (244563@main): &lt;https://commits.webkit.org/244563@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 445189.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1817971</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-11-26 07:14:18 -0800</bug_when>
    <thetext>&lt;rdar://problem/85767760&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>445189</attachid>
            <date>2021-11-26 05:06:30 -0800</date>
            <delta_ts>2021-11-26 07:13:12 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-233520-20211126150629.patch</filename>
            <type>text/plain</type>
            <size>10959</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg2MTcxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmFhYmU5MzYxYmU4ZDc3
OWE4MmViNzYxNDUyOTE1MjIwZTE0OWQwNC4uYzU2MjlhY2I5ZDUwNzdmNTQ3OTViYzM4OTdkOWJl
MjBkNTU3YWI3NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDIxLTExLTI2ICBBbnR0
aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBbOmhhcygpIHBzZXVkby1j
bGFzc10gRG9uJ3QgdHJhdmVyc2UgZGVzY2VuZGFudHMgZHVyaW5nIHNlbGVjdG9yIG1hdGNoaW5n
IHVubGVzcyBuZWVkZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTIzMzUyMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIEl0IGlzIHN1ZmZpY2llbnQgdG8gdHJhdmVyc2UgZGlyZWN0IGNoaWxkcmVuIHRvIG1h
dGNoIHNvbWV0aGluZyBsaWtlIDpoYXMoPiBmb28pLgorCisgICAgICAgICogY3NzL1NlbGVjdG9y
Q2hlY2tlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTZWxlY3RvckNoZWNrZXI6OmNoZWNrT25l
IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlNlbGVjdG9yQ2hlY2tlcjo6bWF0Y2hIYXNQc2V1
ZG9DbGFzcyBjb25zdCk6CisKKyAgICAgICAgRmFjdG9yIGludG8gYSBmdW5jdGlvbi4KKyAgICAg
ICAgQ29tcHV0ZSB0aGUgbWF0Y2ggZWxlbWVudCBmb3IgdGhlIDpoYXMoKSBhcmd1bWVudCBhbmQg
dXNlIGl0IHRvIGNob29zZSB3aGF0IHRvIHRyYXZlcnNlLgorCisgICAgICAgICogY3NzL1NlbGVj
dG9yQ2hlY2tlci5oOgorICAgICAgICAqIHN0eWxlL1J1bGVGZWF0dXJlLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlN0eWxlOjpjb21wdXRlTmV4dE1hdGNoRWxlbWVudCk6CisgICAgICAgIChXZWJD
b3JlOjpTdHlsZTo6Y29tcHV0ZUhhc1BzZXVkb0NsYXNzTWF0Y2hFbGVtZW50KToKKyAgICAgICAg
KFdlYkNvcmU6OlN0eWxlOjpjb21wdXRlU3ViU2VsZWN0b3JNYXRjaEVsZW1lbnQpOgorCisgICAg
ICAgIE1ha2UgdGhlc2UgZnJlZS1zdGFuZGluZyBmdW5jdGlvbnMgYW5kIGV4cG9zZSBjb21wdXRl
SGFzUHNldWRvQ2xhc3NNYXRjaEVsZW1lbnQuCisKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlOjpS
dWxlRmVhdHVyZVNldDo6Y29tcHV0ZU5leHRNYXRjaEVsZW1lbnQpOiBEZWxldGVkLgorICAgICAg
ICAoV2ViQ29yZTo6U3R5bGU6OlJ1bGVGZWF0dXJlU2V0Ojpjb21wdXRlU3ViU2VsZWN0b3JNYXRj
aEVsZW1lbnQpOiBEZWxldGVkLgorICAgICAgICAqIHN0eWxlL1J1bGVGZWF0dXJlLmg6CisKIDIw
MjEtMTEtMjUgIEplYW4tWXZlcyBBdmVuYXJkICA8anlhQGFwcGxlLmNvbT4KIAogICAgICAgICBB
dm9pZCBmbGF0dGVuaW5nIGEgU2hhcmVkQnVmZmVyIHdoZW4gcmVhZGluZyByZWFkaW5nIGl0IHRo
cm91Z2ggU2hhcmVkQnVmZmVyQ2h1bmtSZWFkZXIuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9jc3MvU2VsZWN0b3JDaGVja2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TZWxlY3RvckNo
ZWNrZXIuY3BwCmluZGV4IGJiMGU0NTYxOTk1Yjk4YWQ3Y2Y4MTNmZDQyZGI1NThiNDU3Y2RhYWIu
Ljg1Y2Y1NzI2YmE0MWQwYjMzNzZhNGFmNjhlN2Q3NDhlOGY4MThkMDkgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9TZWxlY3RvckNoZWNrZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9TZWxlY3RvckNoZWNrZXIuY3BwCkBAIC00Myw2ICs0Myw3IEBACiAjaW5jbHVkZSAiSW5z
cGVjdG9ySW5zdHJ1bWVudGF0aW9uLmgiCiAjaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgIlJl
bmRlckVsZW1lbnQuaCIKKyNpbmNsdWRlICJSdWxlRmVhdHVyZS5oIgogI2luY2x1ZGUgIlNlbGVj
dG9yQ2hlY2tlclRlc3RGdW5jdGlvbnMuaCIKICNpbmNsdWRlICJTaGFkb3dSb290LmgiCiAjaW5j
bHVkZSAiU3R5bGVTY29wZS5oIgpAQCAtODYxLDI5ICs4NjIsMTAgQEAgYm9vbCBTZWxlY3RvckNo
ZWNrZXI6OmNoZWNrT25lKENoZWNraW5nQ29udGV4dCYgY2hlY2tpbmdDb250ZXh0LCBjb25zdCBM
b2NhbENvbnQKICAgICAgICAgICAgICAgICByZXR1cm4gaGFzTWF0Y2hlZEFueXRoaW5nOwogICAg
ICAgICAgICAgfQogICAgICAgICBjYXNlIENTU1NlbGVjdG9yOjpQc2V1ZG9DbGFzc0hhczogewot
ICAgICAgICAgICAgLy8gRklYTUU6IFRoaXMgaXMgdGhlIHdvcnN0IHBvc3NpYmxlIGltcGxlbWVu
dGF0aW9uIGluIHRlcm1zIG9mIHBlcmZvcm1hbmNlLgotICAgICAgICAgICAgYXV0byBjaGVja1Jl
bGF0aXZlID0gWyZdKGF1dG8mIGVsZW1lbnRUb0NoZWNrKSB7Ci0gICAgICAgICAgICAgICAgZm9y
IChhdXRvKiBzdWJzZWxlY3RvciA9IHNlbGVjdG9yLnNlbGVjdG9yTGlzdCgpLT5maXJzdCgpOyBz
dWJzZWxlY3Rvcjsgc3Vic2VsZWN0b3IgPSBDU1NTZWxlY3Rvckxpc3Q6Om5leHQoc3Vic2VsZWN0
b3IpKSB7Ci0gICAgICAgICAgICAgICAgICAgIFNlbGVjdG9yQ2hlY2tlciBzZWxlY3RvckNoZWNr
ZXIoZWxlbWVudC5kb2N1bWVudCgpKTsKLSAgICAgICAgICAgICAgICAgICAgQ2hlY2tpbmdDb250
ZXh0IHNlbGVjdG9yQ2hlY2tpbmdDb250ZXh0KFNlbGVjdG9yQ2hlY2tlcjo6TW9kZTo6UmVzb2x2
aW5nU3R5bGUpOwotICAgICAgICAgICAgICAgICAgICBzZWxlY3RvckNoZWNraW5nQ29udGV4dC5z
Y29wZSA9ICZlbGVtZW50OwotICAgICAgICAgICAgICAgICAgICBpZiAoc2VsZWN0b3JDaGVja2Vy
Lm1hdGNoKCpzdWJzZWxlY3RvciwgZWxlbWVudFRvQ2hlY2ssIHNlbGVjdG9yQ2hlY2tpbmdDb250
ZXh0KSkKLSAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlOwotICAgICAgICAgICAg
ICAgIH0KLSAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgICAgICB9OwotICAg
ICAgICAgICAgZm9yIChhdXRvJiBkZXNjZW5kYW50IDogZGVzY2VuZGFudHNPZlR5cGU8RWxlbWVu
dD4oZWxlbWVudCkpIHsKLSAgICAgICAgICAgICAgICBpZiAoY2hlY2tSZWxhdGl2ZShkZXNjZW5k
YW50KSkKKyAgICAgICAgICAgIGZvciAoYXV0byogaGFzU2VsZWN0b3IgPSBzZWxlY3Rvci5zZWxl
Y3Rvckxpc3QoKS0+Zmlyc3QoKTsgaGFzU2VsZWN0b3I7IGhhc1NlbGVjdG9yID0gQ1NTU2VsZWN0
b3JMaXN0OjpuZXh0KGhhc1NlbGVjdG9yKSkgeworICAgICAgICAgICAgICAgIGlmIChtYXRjaEhh
c1BzZXVkb0NsYXNzKGNoZWNraW5nQ29udGV4dCwgZWxlbWVudCwgKmhhc1NlbGVjdG9yKSkKICAg
ICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAg
ICBmb3IgKGF1dG8qIHNpYmxpbmcgPSBlbGVtZW50Lm5leHRFbGVtZW50U2libGluZygpOyBzaWJs
aW5nOyBzaWJsaW5nID0gc2libGluZy0+bmV4dEVsZW1lbnRTaWJsaW5nKCkpIHsKLSAgICAgICAg
ICAgICAgICBpZiAoY2hlY2tSZWxhdGl2ZSgqc2libGluZykpCi0gICAgICAgICAgICAgICAgICAg
IHJldHVybiB0cnVlOwotICAgICAgICAgICAgICAgIGZvciAoYXV0byYgZGVzY2VuZGFudCA6IGRl
c2NlbmRhbnRzT2ZUeXBlPEVsZW1lbnQ+KCpzaWJsaW5nKSkgewotICAgICAgICAgICAgICAgICAg
ICBpZiAoY2hlY2tSZWxhdGl2ZShkZXNjZW5kYW50KSkKLSAgICAgICAgICAgICAgICAgICAgICAg
IHJldHVybiB0cnVlOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIH0KICAgICAgICAg
ICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgfQogICAgICAgICBjYXNlIENTU1NlbGVjdG9yOjpQ
c2V1ZG9DbGFzc1BsYWNlaG9sZGVyU2hvd246CkBAIC0xMjU4LDYgKzEyNDAsNTEgQEAgYm9vbCBT
ZWxlY3RvckNoZWNrZXI6Om1hdGNoU2VsZWN0b3JMaXN0KENoZWNraW5nQ29udGV4dCYgY2hlY2tp
bmdDb250ZXh0LCBjb25zdAogICAgIHJldHVybiBoYXNNYXRjaGVkQW55dGhpbmc7CiB9CiAKK2Jv
b2wgU2VsZWN0b3JDaGVja2VyOjptYXRjaEhhc1BzZXVkb0NsYXNzKENoZWNraW5nQ29udGV4dCYs
IGNvbnN0IEVsZW1lbnQmIGVsZW1lbnQsIGNvbnN0IENTU1NlbGVjdG9yJiBoYXNTZWxlY3Rvcikg
Y29uc3QKK3sKKyAgICAvLyBGSVhNRTogVGhpcyBpcyBhbG1vc3QgdGhlIHdvcnN0IHBvc3NpYmxl
IGltcGxlbWVudGF0aW9uIGluIHRlcm1zIG9mIHBlcmZvcm1hbmNlLgorCisgICAgU2VsZWN0b3JD
aGVja2VyIGhhc0NoZWNrZXIoZWxlbWVudC5kb2N1bWVudCgpKTsKKworICAgIGF1dG8gY2hlY2tS
ZWxhdGl2ZSA9IFsmXShhdXRvJiBlbGVtZW50VG9DaGVjaykgeworICAgICAgICBDaGVja2luZ0Nv
bnRleHQgaGFzQ2hlY2tpbmdDb250ZXh0KFNlbGVjdG9yQ2hlY2tlcjo6TW9kZTo6UmVzb2x2aW5n
U3R5bGUpOworICAgICAgICBoYXNDaGVja2luZ0NvbnRleHQuc2NvcGUgPSAmZWxlbWVudDsKKyAg
ICAgICAgcmV0dXJuIGhhc0NoZWNrZXIubWF0Y2goaGFzU2VsZWN0b3IsIGVsZW1lbnRUb0NoZWNr
LCBoYXNDaGVja2luZ0NvbnRleHQpOworICAgIH07CisKKyAgICBhdXRvIG1hdGNoRWxlbWVudCA9
IFN0eWxlOjpjb21wdXRlSGFzUHNldWRvQ2xhc3NNYXRjaEVsZW1lbnQoaGFzU2VsZWN0b3IpOwor
CisgICAgc3dpdGNoIChtYXRjaEVsZW1lbnQpIHsKKyAgICBjYXNlIFN0eWxlOjpNYXRjaEVsZW1l
bnQ6Okhhc0NoaWxkOgorICAgICAgICBmb3IgKGF1dG8mIGNoaWxkIDogY2hpbGRyZW5PZlR5cGU8
RWxlbWVudD4oZWxlbWVudCkpIHsKKyAgICAgICAgICAgIGlmIChjaGVja1JlbGF0aXZlKGNoaWxk
KSkKKyAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAgICAgfQorICAgICAgICBicmVh
azsKKyAgICBjYXNlIFN0eWxlOjpNYXRjaEVsZW1lbnQ6Okhhc0Rlc2NlbmRhbnQ6CisgICAgICAg
IGZvciAoYXV0byYgZGVzY2VuZGFudCA6IGRlc2NlbmRhbnRzT2ZUeXBlPEVsZW1lbnQ+KGVsZW1l
bnQpKSB7CisgICAgICAgICAgICBpZiAoY2hlY2tSZWxhdGl2ZShkZXNjZW5kYW50KSkKKyAgICAg
ICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAgICAgfQorICAgICAgICBicmVhazsKKyAgICBj
YXNlIFN0eWxlOjpNYXRjaEVsZW1lbnQ6Okhhc1NpYmxpbmc6CisgICAgICAgIGZvciAoYXV0byog
c2libGluZyA9IGVsZW1lbnQubmV4dEVsZW1lbnRTaWJsaW5nKCk7IHNpYmxpbmc7IHNpYmxpbmcg
PSBzaWJsaW5nLT5uZXh0RWxlbWVudFNpYmxpbmcoKSkgeworICAgICAgICAgICAgaWYgKGNoZWNr
UmVsYXRpdmUoKnNpYmxpbmcpKQorICAgICAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgICAg
ICAgICAgZm9yIChhdXRvJiBkZXNjZW5kYW50IDogZGVzY2VuZGFudHNPZlR5cGU8RWxlbWVudD4o
KnNpYmxpbmcpKSB7CisgICAgICAgICAgICAgICAgaWYgKGNoZWNrUmVsYXRpdmUoZGVzY2VuZGFu
dCkpCisgICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgICAgICAgICAgfQorICAg
ICAgICB9CisgICAgICAgIGJyZWFrOworICAgIGRlZmF1bHQ6CisgICAgICAgIEFTU0VSVF9OT1Rf
UkVBQ0hFRCgpOworICAgICAgICBicmVhazsKKyAgICB9CisKKyAgICByZXR1cm4gZmFsc2U7Cit9
CisKIGJvb2wgU2VsZWN0b3JDaGVja2VyOjpjaGVja1Njcm9sbGJhclBzZXVkb0NsYXNzKGNvbnN0
IENoZWNraW5nQ29udGV4dCYgY2hlY2tpbmdDb250ZXh0LCBjb25zdCBFbGVtZW50JiBlbGVtZW50
LCBjb25zdCBDU1NTZWxlY3RvciYgc2VsZWN0b3IpIGNvbnN0CiB7CiAgICAgQVNTRVJUKHNlbGVj
dG9yLm1hdGNoKCkgPT0gQ1NTU2VsZWN0b3I6OlBzZXVkb0NsYXNzKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9TZWxlY3RvckNoZWNrZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9T
ZWxlY3RvckNoZWNrZXIuaAppbmRleCBlZTFhMjBiNzEyMjNlOGJiYmY4YjZhMTc0MDUwNDg3YzVj
ZDJkYTBlLi4xMDQ1MDgxNTc0MTc4N2Q3MDJjZGZmZTc5OGI3Y2E4ZGIxYWQzZjY1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU2VsZWN0b3JDaGVja2VyLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvY3NzL1NlbGVjdG9yQ2hlY2tlci5oCkBAIC0xMTcsNiArMTE3LDcgQEAgcHJpdmF0ZToK
ICAgICBNYXRjaFJlc3VsdCBtYXRjaFJlY3Vyc2l2ZWx5KENoZWNraW5nQ29udGV4dCYsIGNvbnN0
IExvY2FsQ29udGV4dCYsIFBzZXVkb0lkU2V0JikgY29uc3Q7CiAgICAgYm9vbCBjaGVja09uZShD
aGVja2luZ0NvbnRleHQmLCBjb25zdCBMb2NhbENvbnRleHQmLCBNYXRjaFR5cGUmKSBjb25zdDsK
ICAgICBib29sIG1hdGNoU2VsZWN0b3JMaXN0KENoZWNraW5nQ29udGV4dCYsIGNvbnN0IExvY2Fs
Q29udGV4dCYsIGNvbnN0IEVsZW1lbnQmLCBjb25zdCBDU1NTZWxlY3Rvckxpc3QmKSBjb25zdDsK
KyAgICBib29sIG1hdGNoSGFzUHNldWRvQ2xhc3MoQ2hlY2tpbmdDb250ZXh0JiwgY29uc3QgRWxl
bWVudCYsIGNvbnN0IENTU1NlbGVjdG9yJikgY29uc3Q7CiAKICAgICBib29sIGNoZWNrU2Nyb2xs
YmFyUHNldWRvQ2xhc3MoY29uc3QgQ2hlY2tpbmdDb250ZXh0JiwgY29uc3QgRWxlbWVudCYsIGNv
bnN0IENTU1NlbGVjdG9yJikgY29uc3Q7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0
eWxlL1J1bGVGZWF0dXJlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVGZWF0dXJlLmNw
cAppbmRleCBlNDI4ZWE4ZWIyZWZiYzEyYzEyNjliYjM4YmZmMjc4OWYxNGFiMDIxLi45ODUzODg1
NWUwYjdlYzIwMDUxYWExNzcxMjMxMmVlYTlhMmYzNTBkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9zdHlsZS9SdWxlRmVhdHVyZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3R5bGUvUnVs
ZUZlYXR1cmUuY3BwCkBAIC04MCw3ICs4MCw3IEBAIFJ1bGVGZWF0dXJlOjpSdWxlRmVhdHVyZShj
b25zdCBSdWxlRGF0YSYgcnVsZURhdGEsIHN0ZDo6b3B0aW9uYWw8TWF0Y2hFbGVtZW50PiBtCiAg
ICAgQVNTRVJUKHNlbGVjdG9yTGlzdEluZGV4ID09IHJ1bGVEYXRhLnNlbGVjdG9yTGlzdEluZGV4
KCkpOwogfQogCi1NYXRjaEVsZW1lbnQgUnVsZUZlYXR1cmVTZXQ6OmNvbXB1dGVOZXh0TWF0Y2hF
bGVtZW50KE1hdGNoRWxlbWVudCBtYXRjaEVsZW1lbnQsIENTU1NlbGVjdG9yOjpSZWxhdGlvblR5
cGUgcmVsYXRpb24pCitzdGF0aWMgTWF0Y2hFbGVtZW50IGNvbXB1dGVOZXh0TWF0Y2hFbGVtZW50
KE1hdGNoRWxlbWVudCBtYXRjaEVsZW1lbnQsIENTU1NlbGVjdG9yOjpSZWxhdGlvblR5cGUgcmVs
YXRpb24pCiB7CiAgICAgaWYgKGlzSGFzUHNldWRvQ2xhc3NNYXRjaEVsZW1lbnQobWF0Y2hFbGVt
ZW50KSkKICAgICAgICAgcmV0dXJuIG1hdGNoRWxlbWVudDsKQEAgLTEyOSw3ICsxMjksMzggQEAg
TWF0Y2hFbGVtZW50IFJ1bGVGZWF0dXJlU2V0Ojpjb21wdXRlTmV4dE1hdGNoRWxlbWVudChNYXRj
aEVsZW1lbnQgbWF0Y2hFbGVtZW50LAogICAgIHJldHVybiBtYXRjaEVsZW1lbnQ7CiB9OwogCi1N
YXRjaEVsZW1lbnQgUnVsZUZlYXR1cmVTZXQ6OmNvbXB1dGVTdWJTZWxlY3Rvck1hdGNoRWxlbWVu
dChNYXRjaEVsZW1lbnQgbWF0Y2hFbGVtZW50LCBjb25zdCBDU1NTZWxlY3RvciYgc2VsZWN0b3Is
IGNvbnN0IENTU1NlbGVjdG9yJiBjaGlsZFNlbGVjdG9yKQorTWF0Y2hFbGVtZW50IGNvbXB1dGVI
YXNQc2V1ZG9DbGFzc01hdGNoRWxlbWVudChjb25zdCBDU1NTZWxlY3RvciYgaGFzU2VsZWN0b3Ip
Cit7CisgICAgYXV0byBoYXNNYXRjaEVsZW1lbnQgPSBNYXRjaEVsZW1lbnQ6OlN1YmplY3Q7Cisg
ICAgZm9yIChhdXRvKiBzaW1wbGVTZWxlY3RvciA9ICZoYXNTZWxlY3Rvcjsgc2ltcGxlU2VsZWN0
b3ItPnRhZ0hpc3RvcnkoKTsgc2ltcGxlU2VsZWN0b3IgPSBzaW1wbGVTZWxlY3Rvci0+dGFnSGlz
dG9yeSgpKQorICAgICAgICBoYXNNYXRjaEVsZW1lbnQgPSBjb21wdXRlTmV4dE1hdGNoRWxlbWVu
dChoYXNNYXRjaEVsZW1lbnQsIHNpbXBsZVNlbGVjdG9yLT5yZWxhdGlvbigpKTsKKworICAgIGlm
IChoYXNNYXRjaEVsZW1lbnQgPT0gTWF0Y2hFbGVtZW50OjpQYXJlbnQpCisgICAgICAgIHJldHVy
biBNYXRjaEVsZW1lbnQ6Okhhc0NoaWxkOworCisgICAgc3dpdGNoIChoYXNNYXRjaEVsZW1lbnQp
IHsKKyAgICBjYXNlIE1hdGNoRWxlbWVudDo6UGFyZW50OgorICAgIGNhc2UgTWF0Y2hFbGVtZW50
OjpTdWJqZWN0OgorICAgICAgICByZXR1cm4gTWF0Y2hFbGVtZW50OjpIYXNDaGlsZDsKKyAgICBj
YXNlIE1hdGNoRWxlbWVudDo6QW5jZXN0b3I6CisgICAgICAgIHJldHVybiBNYXRjaEVsZW1lbnQ6
Okhhc0Rlc2NlbmRhbnQ7CisgICAgY2FzZSBNYXRjaEVsZW1lbnQ6OkluZGlyZWN0U2libGluZzoK
KyAgICBjYXNlIE1hdGNoRWxlbWVudDo6RGlyZWN0U2libGluZzoKKyAgICBjYXNlIE1hdGNoRWxl
bWVudDo6UGFyZW50U2libGluZzoKKyAgICBjYXNlIE1hdGNoRWxlbWVudDo6QW5jZXN0b3JTaWJs
aW5nOgorICAgIGNhc2UgTWF0Y2hFbGVtZW50OjpBbnlTaWJsaW5nOgorICAgICAgICByZXR1cm4g
TWF0Y2hFbGVtZW50OjpIYXNTaWJsaW5nOworICAgIGNhc2UgTWF0Y2hFbGVtZW50OjpIYXNDaGls
ZDoKKyAgICBjYXNlIE1hdGNoRWxlbWVudDo6SGFzRGVzY2VuZGFudDoKKyAgICBjYXNlIE1hdGNo
RWxlbWVudDo6SGFzU2libGluZzoKKyAgICBjYXNlIE1hdGNoRWxlbWVudDo6SG9zdDoKKyAgICAg
ICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIGJyZWFrOworICAgIH0KKyAgICByZXR1
cm4gTWF0Y2hFbGVtZW50OjpIYXNDaGlsZDsKK30KKworc3RhdGljIE1hdGNoRWxlbWVudCBjb21w
dXRlU3ViU2VsZWN0b3JNYXRjaEVsZW1lbnQoTWF0Y2hFbGVtZW50IG1hdGNoRWxlbWVudCwgY29u
c3QgQ1NTU2VsZWN0b3ImIHNlbGVjdG9yLCBjb25zdCBDU1NTZWxlY3RvciYgY2hpbGRTZWxlY3Rv
cikKIHsKICAgICBpZiAoc2VsZWN0b3IubWF0Y2goKSA9PSBDU1NTZWxlY3Rvcjo6UHNldWRvQ2xh
c3MpIHsKICAgICAgICAgYXV0byB0eXBlID0gc2VsZWN0b3IucHNldWRvQ2xhc3NUeXBlKCk7CkBA
IC0xNDEsMTcgKzE3Miw4IEBAIE1hdGNoRWxlbWVudCBSdWxlRmVhdHVyZVNldDo6Y29tcHV0ZVN1
YlNlbGVjdG9yTWF0Y2hFbGVtZW50KE1hdGNoRWxlbWVudCBtYXRjaEVsCiAgICAgICAgIGlmICh0
eXBlID09IENTU1NlbGVjdG9yOjpQc2V1ZG9DbGFzc0hvc3QpCiAgICAgICAgICAgICByZXR1cm4g
TWF0Y2hFbGVtZW50OjpIb3N0OwogCi0gICAgICAgIGlmICh0eXBlID09IENTU1NlbGVjdG9yOjpQ
c2V1ZG9DbGFzc0hhcykgewotICAgICAgICAgICAgYXV0byBoYXNNYXRjaEVsZW1lbnQgPSBNYXRj
aEVsZW1lbnQ6OlN1YmplY3Q7Ci0gICAgICAgICAgICBmb3IgKGF1dG8qIHNpbXBsZVNlbGVjdG9y
ID0gJmNoaWxkU2VsZWN0b3I7IHNpbXBsZVNlbGVjdG9yLT50YWdIaXN0b3J5KCk7IHNpbXBsZVNl
bGVjdG9yID0gc2ltcGxlU2VsZWN0b3ItPnRhZ0hpc3RvcnkoKSkKLSAgICAgICAgICAgICAgICBo
YXNNYXRjaEVsZW1lbnQgPSBjb21wdXRlTmV4dE1hdGNoRWxlbWVudChoYXNNYXRjaEVsZW1lbnQs
IHNpbXBsZVNlbGVjdG9yLT5yZWxhdGlvbigpKTsKLQotICAgICAgICAgICAgaWYgKGhhc01hdGNo
RWxlbWVudCA9PSBNYXRjaEVsZW1lbnQ6OlBhcmVudCkKLSAgICAgICAgICAgICAgICByZXR1cm4g
TWF0Y2hFbGVtZW50OjpIYXNDaGlsZDsKLSAgICAgICAgICAgIGlmIChpc1NpYmxpbmdPclN1Ympl
Y3QoaGFzTWF0Y2hFbGVtZW50KSkKLSAgICAgICAgICAgICAgICByZXR1cm4gTWF0Y2hFbGVtZW50
OjpIYXNTaWJsaW5nOwotICAgICAgICAgICAgcmV0dXJuIE1hdGNoRWxlbWVudDo6SGFzRGVzY2Vu
ZGFudDsKLSAgICAgICAgfQorICAgICAgICBpZiAodHlwZSA9PSBDU1NTZWxlY3Rvcjo6UHNldWRv
Q2xhc3NIYXMpCisgICAgICAgICAgICByZXR1cm4gY29tcHV0ZUhhc1BzZXVkb0NsYXNzTWF0Y2hF
bGVtZW50KGNoaWxkU2VsZWN0b3IpOwogICAgIH0KICAgICBpZiAoc2VsZWN0b3IubWF0Y2goKSA9
PSBDU1NTZWxlY3Rvcjo6UHNldWRvRWxlbWVudCkgewogICAgICAgICAvLyBTaW1pbGFybHkgZm9y
IDo6c2xvdHRlZCgpLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3R5bGUvUnVsZUZlYXR1
cmUuaCBiL1NvdXJjZS9XZWJDb3JlL3N0eWxlL1J1bGVGZWF0dXJlLmgKaW5kZXggZjQ2NmE0MTg1
Njk4MjY0MmY4ZmRmMTJkNmRlNzkzN2I1NWVhZmExZi4uNGRlYmY4ODMwNzhiMWY0ZGMzOTA2ZDg0
MWJhOTcxM2MxMjE2MDljYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3R5bGUvUnVsZUZl
YXR1cmUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdHlsZS9SdWxlRmVhdHVyZS5oCkBAIC05Miw5
ICs5Miw2IEBAIHN0cnVjdCBSdWxlRmVhdHVyZVNldCB7CiAgICAgYm9vbCB1c2VzRmlyc3RMZXR0
ZXJSdWxlcyB7IGZhbHNlIH07CiAKIHByaXZhdGU6Ci0gICAgc3RhdGljIE1hdGNoRWxlbWVudCBj
b21wdXRlTmV4dE1hdGNoRWxlbWVudChNYXRjaEVsZW1lbnQsIENTU1NlbGVjdG9yOjpSZWxhdGlv
blR5cGUpOwotICAgIHN0YXRpYyBNYXRjaEVsZW1lbnQgY29tcHV0ZVN1YlNlbGVjdG9yTWF0Y2hF
bGVtZW50KE1hdGNoRWxlbWVudCwgY29uc3QgQ1NTU2VsZWN0b3ImLCBjb25zdCBDU1NTZWxlY3Rv
ciYgY2hpbGRTZWxlY3Rvcik7Ci0KICAgICBzdHJ1Y3QgU2VsZWN0b3JGZWF0dXJlcyB7CiAgICAg
ICAgIGJvb2wgaGFzU2libGluZ1NlbGVjdG9yIHsgZmFsc2UgfTsKIApAQCAtMTA3LDYgKzEwNCw3
IEBAIHByaXZhdGU6CiB9OwogCiBib29sIGlzSGFzUHNldWRvQ2xhc3NNYXRjaEVsZW1lbnQoTWF0
Y2hFbGVtZW50KTsKK01hdGNoRWxlbWVudCBjb21wdXRlSGFzUHNldWRvQ2xhc3NNYXRjaEVsZW1l
bnQoY29uc3QgQ1NTU2VsZWN0b3ImKTsKIAogfSAvLyBuYW1lc3BhY2UgU3R5bGUKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUK
</data>

          </attachment>
      

    </bug>

</bugzilla>