<?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>162828</bug_id>
          
          <creation_ts>2016-09-30 19:29:01 -0700</creation_ts>
          <short_desc>[RenderCounter] Render tree should be all clean by the end of FrameView::layout().</short_desc>
          <delta_ts>2016-11-17 13:15:35 -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>Layout and Rendering</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>ASSIGNED</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>163399</dependson>
          <blocked>162834</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="alan">zalan</reporter>
          <assigned_to name="alan">zalan</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1235563</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2016-09-30 19:29:01 -0700</bug_when>
    <thetext>We fail to clean all the renderers while running the following tests:
LayoutTests/imported/blink/fast/table/crash-bad-child-table-continuation.html	
LayoutTests/tables/table-section-overflow-clip-crash.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1237325</commentid>
    <comment_count>1</comment_count>
      <attachid>290862</attachid>
    <who name="alan">zalan</who>
    <bug_when>2016-10-06 13:55:14 -0700</bug_when>
    <thetext>Created attachment 290862
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1237363</commentid>
    <comment_count>2</comment_count>
      <attachid>290862</attachid>
    <who name="alan">zalan</who>
    <bug_when>2016-10-06 14:41:16 -0700</bug_when>
    <thetext>Comment on attachment 290862
Patch

wrong bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1245772</commentid>
    <comment_count>3</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2016-10-28 14:08:13 -0700</bug_when>
    <thetext>(In reply to comment #0)
&gt; We fail to clean all the renderers while running the following tests:
&gt; LayoutTests/imported/blink/fast/table/crash-bad-child-table-continuation.
&gt; html	
Can&apos;t reproduce this anymore.

&gt; LayoutTests/tables/table-section-overflow-clip-crash.html
This is RenderCounter related.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1252412</commentid>
    <comment_count>4</comment_count>
      <attachid>295074</attachid>
    <who name="alan">zalan</who>
    <bug_when>2016-11-17 13:14:12 -0800</bug_when>
    <thetext>Created attachment 295074
WIP patch

Improve RenderCounter/CounterNode (rewrite).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1252413</commentid>
    <comment_count>5</comment_count>
      <attachid>295075</attachid>
    <who name="alan">zalan</who>
    <bug_when>2016-11-17 13:15:35 -0800</bug_when>
    <thetext>Created attachment 295075
WIP patch</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>290862</attachid>
            <date>2016-10-06 13:55:14 -0700</date>
            <delta_ts>2016-10-06 14:41:16 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>1368</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBkMWM3MjhmLi5iZDQ3NTFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTgg
QEAKKzIwMTYtMTAtMDYgIFphbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KKworICAgICAg
ICBBZGQgYmFjayBBU1NFUlQoIW5lZWRzTGF5b3V0KSB0byBSZW5kZXJUYWJsZVNlY3Rpb24gd2hp
Y2ggaXMgbm93IHZhbGlkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD05Mjk1NAorICAgICAgICA8cmRhcjovL3Byb2JsZW0vMTIxNDc5NzM+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgRGFuIEJlcm5zdGVpbi4KKworICAgICAgICBMYXlvdXRUZXN0cyBwYXNz
IGZpbmUgbm93IHdpdGggdGhpcyBhc3NlcnQgb24uCisKKyAgICAgICAgQ292ZXJlZCBieSBleGlz
dGluZyB0ZXN0cy4KKworICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJUYWJsZVNlY3Rpb24uY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGFibGVTZWN0aW9uOjpwYWludCk6CisKIDIwMTYt
MTAtMDYgIEpvaG4gV2lsYW5kZXIgIDx3aWxhbmRlckBhcHBsZS5jb20+CiAKICAgICAgICAgVXBk
YXRlIFJlc291cmNlIExvYWQgU3RhdGlzdGljcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlclRhYmxlU2VjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyVGFibGVTZWN0aW9uLmNwcAppbmRleCBjODVjNTQyLi5kODg1ZThlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGFibGVTZWN0aW9uLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGFibGVTZWN0aW9uLmNwcApAQCAtOTQz
LDggKzk0Myw3IEBAIE9wdGlvbmFsPGludD4gUmVuZGVyVGFibGVTZWN0aW9uOjpmaXJzdExpbmVC
YXNlbGluZSgpIGNvbnN0CiAKIHZvaWQgUmVuZGVyVGFibGVTZWN0aW9uOjpwYWludChQYWludElu
Zm8mIHBhaW50SW5mbywgY29uc3QgTGF5b3V0UG9pbnQmIHBhaW50T2Zmc2V0KQogewotICAgIC8v
IHB1dCB0aGlzIGJhY2sgaW4gd2hlbiBhbGwgbGF5b3V0IHRlc3RzIGNhbiBoYW5kbGUgaXQKLSAg
ICAvLyBBU1NFUlQoIW5lZWRzTGF5b3V0KCkpOworICAgIEFTU0VSVCghbmVlZHNMYXlvdXQoKSk7
CiAgICAgLy8gYXZvaWQgY3Jhc2hpbmcgb24gYnVncyB0aGF0IGNhdXNlIHVzIHRvIHBhaW50IHdp
dGggZGlydHkgbGF5b3V0CiAgICAgaWYgKG5lZWRzTGF5b3V0KCkpCiAgICAgICAgIHJldHVybjsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>295074</attachid>
            <date>2016-11-17 13:14:12 -0800</date>
            <delta_ts>2016-11-17 13:15:35 -0800</delta_ts>
            <desc>WIP patch</desc>
            <filename>WIP.patch</filename>
            <type>application/octet-stream</type>
            <size>4496</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWV3LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWV3LmNwcAppbmRleCA5OGFhY2VmLi5kNmZl
YTBhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVmlldy5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclZpZXcuY3BwCkBAIC01Myw2ICs1
Myw4IEBACiAjaW5jbHVkZSAiVHJhbnNmb3JtU3RhdGUuaCIKICNpbmNsdWRlIDx3dGYvU3RhY2tT
dGF0cy5oPgogI2luY2x1ZGUgPHd0Zi9UZW1wb3JhcnlDaGFuZ2UuaD4KKyNpbmNsdWRlICJSZW5k
ZXJDb3VudGVyLmgiCisjaW5jbHVkZSAiUmVuZGVyTGlzdE1hcmtlci5oIgogCiBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAKQEAgLTMzNSw4ICszMzcsOTkgQEAgdm9pZCBSZW5kZXJWaWV3OjpsYXlvdXRD
b250ZW50VG9Db21wdXRlT3ZlcmZsb3dJblJlZ2lvbnMoY29uc3QgTGF5b3V0U3RhdGUmIHN0YXQK
ICAgICBmbG93VGhyZWFkQ29udHJvbGxlcigpLnVwZGF0ZUZsb3dUaHJlYWRzSW50b01lYXN1cmVD
b250ZW50UGhhc2UoKTsKIH0KIAorc3RydWN0IENvdW50ZXJEYXRhIHsKKyAgICBpbnQgbV92YWx1
ZSB7IDAgfTsKKyAgICBSZW5kZXJFbGVtZW50KiBtX3BhcmVudCB7IG51bGxwdHIgfTsKK307Cit1
c2luZyBDb3VudGVyVmFsdWVTdGFjayA9IFZlY3RvcjxDb3VudGVyRGF0YT47Cit1c2luZyBDb3Vu
dGVySWRlbnRpZmllcnMgPSBIYXNoTWFwPEF0b21pY1N0cmluZywgQ291bnRlclZhbHVlU3RhY2s+
OworCitzdGF0aWMgdm9pZCB1cGRhdGVSZW5kZXJDb3VudGVyVGV4dChSZW5kZXJDb3VudGVyJiBj
b3VudGVyLCBDb3VudGVySWRlbnRpZmllcnMmIGNvdW50ZXJJZGVudGlmaWVyVmFsdWVzKQorewor
ICAgIC8vIFJlYWQgdGhlIGNvdW50ZXIgdmFsdWUvdmFsdWVzIGFuZCBzZXQgaXQgb24gdGhlIHJl
bmRlcmVyLgorICAgIFN0cmluZyBjb3VudGVyVGV4dDsKKyAgICBhdXRvJiBjb3VudGVyQ29udGVu
dCA9IGNvdW50ZXIuY291bnRlckNvbnRlbnQoKTsKKyAgICBhdXRvIGNvdW50ZXJWYWx1ZXMgPSBj
b3VudGVySWRlbnRpZmllclZhbHVlcy5nZXQoY291bnRlckNvbnRlbnQuaWRlbnRpZmllcigpKTsK
KyAgICAvLyBVbmRlZmluZWQgY291bnRlci4KKyAgICBpZiAoY291bnRlclZhbHVlcy5pc0VtcHR5
KCkpCisgICAgICAgIGNvdW50ZXJWYWx1ZXMuYXBwZW5kKHsgMCwgbnVsbHB0ciB9KTsKKyAgICBp
ZiAoIWNvdW50ZXJDb250ZW50LnNlcGFyYXRvcigpLmlzTnVsbCgpKSB7CisgICAgICAgIC8vIGNv
dW50ZXJzKCkKKyAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IGNvdW50ZXJWYWx1ZXMu
c2l6ZSgpIC0gMTsgKytpKQorICAgICAgICAgICAgY291bnRlclRleHQgPSBjb3VudGVyVGV4dCAr
IGxpc3RNYXJrZXJUZXh0KGNvdW50ZXJDb250ZW50Lmxpc3RTdHlsZSgpLCBjb3VudGVyVmFsdWVz
W2ldLm1fdmFsdWUpICsgY291bnRlckNvbnRlbnQuc2VwYXJhdG9yKCk7CisgICAgfQorICAgIGNv
dW50ZXJUZXh0ID0gY291bnRlclRleHQgKyBsaXN0TWFya2VyVGV4dChjb3VudGVyQ29udGVudC5s
aXN0U3R5bGUoKSwgY291bnRlclZhbHVlcy5sYXN0KCkubV92YWx1ZSk7CisgICAgY291bnRlci5z
ZXRUZXh0KGNvdW50ZXJUZXh0KTsKK30KKworc3RhdGljIHZvaWQgdXBkYXRlQ291bnRlclZhbHVl
cyhjb25zdCBDb3VudGVyRGlyZWN0aXZlTWFwKiBjb3VudGVyRGlyZWN0aXZlc01hcCwgQ291bnRl
cklkZW50aWZpZXJzJiBjb3VudGVySWRlbnRpZmllclZhbHVlcywgY29uc3QgUmVuZGVyRWxlbWVu
dCYgcmVuZGVyZXIpCit7CisgICAgaWYgKCFjb3VudGVyRGlyZWN0aXZlc01hcCkKKyAgICAgICAg
cmV0dXJuOworCisgICAgYXV0byBlbmQgPSBjb3VudGVyRGlyZWN0aXZlc01hcC0+ZW5kKCk7Cisg
ICAgZm9yIChhdXRvIGl0ID0gY291bnRlckRpcmVjdGl2ZXNNYXAtPmJlZ2luKCk7IGl0ICE9IGVu
ZDsgKytpdCkgeworICAgICAgICBhdXRvIGNvdW50ZXJEaXJlY3RpdmVzID0gaXQtPnZhbHVlOwor
ICAgICAgICBpZiAoIWNvdW50ZXJEaXJlY3RpdmVzLmlzRGVmaW5lZCgpKQorICAgICAgICAgICAg
Y29udGludWU7CisKKyAgICAgICAgYXV0byYgY291bnRlclZhbHVlcyA9IGNvdW50ZXJJZGVudGlm
aWVyVmFsdWVzLmVuc3VyZShpdC0+a2V5LCBbXSB7CisgICAgICAgICAgICByZXR1cm4gQ291bnRl
clZhbHVlU3RhY2soKTsKKyAgICAgICAgfSkuaXRlcmF0b3ItPnZhbHVlOworCisgICAgICAgIGlm
IChjb3VudGVyRGlyZWN0aXZlcy5pc1Jlc2V0KCkpIHsKKyAgICAgICAgICAgIC8vIFNhbWUgcGFy
ZW50IC0+IHNpYmxpbmcgcmVzZXQuCisgICAgICAgICAgICBpZiAoIWNvdW50ZXJWYWx1ZXMuaXNF
bXB0eSgpICYmIGNvdW50ZXJWYWx1ZXMubGFzdCgpLm1fcGFyZW50ID09IHJlbmRlcmVyLnBhcmVu
dCgpKQorICAgICAgICAgICAgICAgIGNvdW50ZXJWYWx1ZXMubGFzdCgpID0geyBjb3VudGVyRGly
ZWN0aXZlcy5yZXNldFZhbHVlKCksIHJlbmRlcmVyLnBhcmVudCgpIH07CisgICAgICAgICAgICBl
bHNlCisgICAgICAgICAgICAgICAgY291bnRlclZhbHVlcy5hcHBlbmQoeyBjb3VudGVyRGlyZWN0
aXZlcy5yZXNldFZhbHVlKCksIHJlbmRlcmVyLnBhcmVudCgpIH0pOworICAgICAgICB9CisKKyAg
ICAgICAgaWYgKGNvdW50ZXJEaXJlY3RpdmVzLmlzSW5jcmVtZW50KCkpIHsKKyAgICAgICAgICAg
IC8vIFVuZGVmaW5lZCBjb3VudGVyIHZhcmlhYmxlLiBDcmVhdGUgb25lIGhlcmUuCisgICAgICAg
ICAgICBpZiAoY291bnRlclZhbHVlcy5pc0VtcHR5KCkpCisgICAgICAgICAgICAgICAgY291bnRl
clZhbHVlcy5hcHBlbmQoeyBjb3VudGVyRGlyZWN0aXZlcy5pbmNyZW1lbnRWYWx1ZSgpLCByZW5k
ZXJlci5wYXJlbnQoKSB9KTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICBjb3Vu
dGVyVmFsdWVzLmxhc3QoKS5tX3ZhbHVlICs9IGNvdW50ZXJEaXJlY3RpdmVzLmluY3JlbWVudFZh
bHVlKCk7CisgICAgICAgIH0KKyAgICB9Cit9CisKK3N0YXRpYyB2b2lkIGNsZWFudXBDb3VudGVy
cyhSZW5kZXJFbGVtZW50JiByZW5kZXJlciwgQ291bnRlcklkZW50aWZpZXJzJiBjb3VudGVySWRl
bnRpZmllclZhbHVlcykKK3sKKyAgICAvLyBMb3NlIHNjb3BlIG9uIHRoZSBjaGlsZCBpZGVudGlm
aWVycy4KKyAgICBmb3IgKGF1dG8mIGNvdW50ZXJJZGVudGlmaWVycyA6IGNvdW50ZXJJZGVudGlm
aWVyVmFsdWVzKSB7CisgICAgICAgIGF1dG8mIGNvdW50ZXJWYWx1ZXMgPSBjb3VudGVySWRlbnRp
ZmllcnMudmFsdWU7CisgICAgICAgIGlmICghY291bnRlclZhbHVlcy5pc0VtcHR5KCkgJiYgY291
bnRlclZhbHVlcy5sYXN0KCkubV9wYXJlbnQgPT0gJnJlbmRlcmVyKSB7CisgICAgICAgICAgICBj
b3VudGVyVmFsdWVzLnJlbW92ZUxhc3QoKTsKKyAgICAgICAgICAgIEFTU0VSVChjb3VudGVyVmFs
dWVzLmlzRW1wdHkoKSB8fCBjb3VudGVyVmFsdWVzLmxhc3QoKS5tX3BhcmVudCAhPSAmcmVuZGVy
ZXIpOworICAgICAgICB9CisgICAgfQorfQorCitzdGF0aWMgdm9pZCByZXNvbHZlQ291bnRlcihS
ZW5kZXJFbGVtZW50JiByZW5kZXJlciwgQ291bnRlcklkZW50aWZpZXJzJiBjb3VudGVySWRlbnRp
ZmllclZhbHVlcykKK3sKKyAgICB1cGRhdGVDb3VudGVyVmFsdWVzKHJlbmRlcmVyLnN0eWxlKCku
Y291bnRlckRpcmVjdGl2ZXMoKSwgY291bnRlcklkZW50aWZpZXJWYWx1ZXMsIHJlbmRlcmVyKTsK
KworICAgIGZvciAoYXV0byogY2hpbGQgPSByZW5kZXJlci5maXJzdENoaWxkKCk7IGNoaWxkOyBj
aGlsZCA9IGNoaWxkLT5uZXh0U2libGluZygpKSB7CisgICAgICAgIGlmIChpczxSZW5kZXJDb3Vu
dGVyPigqY2hpbGQpKSB7CisgICAgICAgICAgICB1cGRhdGVSZW5kZXJDb3VudGVyVGV4dChkb3du
Y2FzdDxSZW5kZXJDb3VudGVyPigqY2hpbGQpLCBjb3VudGVySWRlbnRpZmllclZhbHVlcyk7Cisg
ICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgfQorICAgICAgICBpZiAoIWlzPFJlbmRlckVs
ZW1lbnQ+KCpjaGlsZCkpCisgICAgICAgICAgICBjb250aW51ZTsKKworICAgICAgICByZXNvbHZl
Q291bnRlcihkb3duY2FzdDxSZW5kZXJFbGVtZW50PigqY2hpbGQpLCBjb3VudGVySWRlbnRpZmll
clZhbHVlcyk7CisgICAgfQorCisgICAgY2xlYW51cENvdW50ZXJzKHJlbmRlcmVyLCBjb3VudGVy
SWRlbnRpZmllclZhbHVlcyk7Cit9CisKIHZvaWQgUmVuZGVyVmlldzo6bGF5b3V0KCkKIHsKKyAg
ICBDb3VudGVySWRlbnRpZmllcnMgY291bnRlcklkZW50aWZpZXJWYWx1ZXM7CisgICAgcmVzb2x2
ZUNvdW50ZXIoKnRoaXMsIGNvdW50ZXJJZGVudGlmaWVyVmFsdWVzKTsKKwogICAgIFN0YWNrU3Rh
dHM6OkxheW91dENoZWNrUG9pbnQgbGF5b3V0Q2hlY2tQb2ludDsKICAgICBpZiAoIWRvY3VtZW50
KCkucGFnaW5hdGVkKCkpCiAgICAgICAgIHNldFBhZ2VMb2dpY2FsSGVpZ2h0KDApOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>295075</attachid>
            <date>2016-11-17 13:15:35 -0800</date>
            <delta_ts>2016-11-17 13:15:35 -0800</delta_ts>
            <desc>WIP patch</desc>
            <filename>WIP.patch</filename>
            <type>text/plain</type>
            <size>4496</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWV3LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJWaWV3LmNwcAppbmRleCA5OGFhY2VmLi5kNmZl
YTBhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVmlldy5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclZpZXcuY3BwCkBAIC01Myw2ICs1
Myw4IEBACiAjaW5jbHVkZSAiVHJhbnNmb3JtU3RhdGUuaCIKICNpbmNsdWRlIDx3dGYvU3RhY2tT
dGF0cy5oPgogI2luY2x1ZGUgPHd0Zi9UZW1wb3JhcnlDaGFuZ2UuaD4KKyNpbmNsdWRlICJSZW5k
ZXJDb3VudGVyLmgiCisjaW5jbHVkZSAiUmVuZGVyTGlzdE1hcmtlci5oIgogCiBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAKQEAgLTMzNSw4ICszMzcsOTkgQEAgdm9pZCBSZW5kZXJWaWV3OjpsYXlvdXRD
b250ZW50VG9Db21wdXRlT3ZlcmZsb3dJblJlZ2lvbnMoY29uc3QgTGF5b3V0U3RhdGUmIHN0YXQK
ICAgICBmbG93VGhyZWFkQ29udHJvbGxlcigpLnVwZGF0ZUZsb3dUaHJlYWRzSW50b01lYXN1cmVD
b250ZW50UGhhc2UoKTsKIH0KIAorc3RydWN0IENvdW50ZXJEYXRhIHsKKyAgICBpbnQgbV92YWx1
ZSB7IDAgfTsKKyAgICBSZW5kZXJFbGVtZW50KiBtX3BhcmVudCB7IG51bGxwdHIgfTsKK307Cit1
c2luZyBDb3VudGVyVmFsdWVTdGFjayA9IFZlY3RvcjxDb3VudGVyRGF0YT47Cit1c2luZyBDb3Vu
dGVySWRlbnRpZmllcnMgPSBIYXNoTWFwPEF0b21pY1N0cmluZywgQ291bnRlclZhbHVlU3RhY2s+
OworCitzdGF0aWMgdm9pZCB1cGRhdGVSZW5kZXJDb3VudGVyVGV4dChSZW5kZXJDb3VudGVyJiBj
b3VudGVyLCBDb3VudGVySWRlbnRpZmllcnMmIGNvdW50ZXJJZGVudGlmaWVyVmFsdWVzKQorewor
ICAgIC8vIFJlYWQgdGhlIGNvdW50ZXIgdmFsdWUvdmFsdWVzIGFuZCBzZXQgaXQgb24gdGhlIHJl
bmRlcmVyLgorICAgIFN0cmluZyBjb3VudGVyVGV4dDsKKyAgICBhdXRvJiBjb3VudGVyQ29udGVu
dCA9IGNvdW50ZXIuY291bnRlckNvbnRlbnQoKTsKKyAgICBhdXRvIGNvdW50ZXJWYWx1ZXMgPSBj
b3VudGVySWRlbnRpZmllclZhbHVlcy5nZXQoY291bnRlckNvbnRlbnQuaWRlbnRpZmllcigpKTsK
KyAgICAvLyBVbmRlZmluZWQgY291bnRlci4KKyAgICBpZiAoY291bnRlclZhbHVlcy5pc0VtcHR5
KCkpCisgICAgICAgIGNvdW50ZXJWYWx1ZXMuYXBwZW5kKHsgMCwgbnVsbHB0ciB9KTsKKyAgICBp
ZiAoIWNvdW50ZXJDb250ZW50LnNlcGFyYXRvcigpLmlzTnVsbCgpKSB7CisgICAgICAgIC8vIGNv
dW50ZXJzKCkKKyAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IGNvdW50ZXJWYWx1ZXMu
c2l6ZSgpIC0gMTsgKytpKQorICAgICAgICAgICAgY291bnRlclRleHQgPSBjb3VudGVyVGV4dCAr
IGxpc3RNYXJrZXJUZXh0KGNvdW50ZXJDb250ZW50Lmxpc3RTdHlsZSgpLCBjb3VudGVyVmFsdWVz
W2ldLm1fdmFsdWUpICsgY291bnRlckNvbnRlbnQuc2VwYXJhdG9yKCk7CisgICAgfQorICAgIGNv
dW50ZXJUZXh0ID0gY291bnRlclRleHQgKyBsaXN0TWFya2VyVGV4dChjb3VudGVyQ29udGVudC5s
aXN0U3R5bGUoKSwgY291bnRlclZhbHVlcy5sYXN0KCkubV92YWx1ZSk7CisgICAgY291bnRlci5z
ZXRUZXh0KGNvdW50ZXJUZXh0KTsKK30KKworc3RhdGljIHZvaWQgdXBkYXRlQ291bnRlclZhbHVl
cyhjb25zdCBDb3VudGVyRGlyZWN0aXZlTWFwKiBjb3VudGVyRGlyZWN0aXZlc01hcCwgQ291bnRl
cklkZW50aWZpZXJzJiBjb3VudGVySWRlbnRpZmllclZhbHVlcywgY29uc3QgUmVuZGVyRWxlbWVu
dCYgcmVuZGVyZXIpCit7CisgICAgaWYgKCFjb3VudGVyRGlyZWN0aXZlc01hcCkKKyAgICAgICAg
cmV0dXJuOworCisgICAgYXV0byBlbmQgPSBjb3VudGVyRGlyZWN0aXZlc01hcC0+ZW5kKCk7Cisg
ICAgZm9yIChhdXRvIGl0ID0gY291bnRlckRpcmVjdGl2ZXNNYXAtPmJlZ2luKCk7IGl0ICE9IGVu
ZDsgKytpdCkgeworICAgICAgICBhdXRvIGNvdW50ZXJEaXJlY3RpdmVzID0gaXQtPnZhbHVlOwor
ICAgICAgICBpZiAoIWNvdW50ZXJEaXJlY3RpdmVzLmlzRGVmaW5lZCgpKQorICAgICAgICAgICAg
Y29udGludWU7CisKKyAgICAgICAgYXV0byYgY291bnRlclZhbHVlcyA9IGNvdW50ZXJJZGVudGlm
aWVyVmFsdWVzLmVuc3VyZShpdC0+a2V5LCBbXSB7CisgICAgICAgICAgICByZXR1cm4gQ291bnRl
clZhbHVlU3RhY2soKTsKKyAgICAgICAgfSkuaXRlcmF0b3ItPnZhbHVlOworCisgICAgICAgIGlm
IChjb3VudGVyRGlyZWN0aXZlcy5pc1Jlc2V0KCkpIHsKKyAgICAgICAgICAgIC8vIFNhbWUgcGFy
ZW50IC0+IHNpYmxpbmcgcmVzZXQuCisgICAgICAgICAgICBpZiAoIWNvdW50ZXJWYWx1ZXMuaXNF
bXB0eSgpICYmIGNvdW50ZXJWYWx1ZXMubGFzdCgpLm1fcGFyZW50ID09IHJlbmRlcmVyLnBhcmVu
dCgpKQorICAgICAgICAgICAgICAgIGNvdW50ZXJWYWx1ZXMubGFzdCgpID0geyBjb3VudGVyRGly
ZWN0aXZlcy5yZXNldFZhbHVlKCksIHJlbmRlcmVyLnBhcmVudCgpIH07CisgICAgICAgICAgICBl
bHNlCisgICAgICAgICAgICAgICAgY291bnRlclZhbHVlcy5hcHBlbmQoeyBjb3VudGVyRGlyZWN0
aXZlcy5yZXNldFZhbHVlKCksIHJlbmRlcmVyLnBhcmVudCgpIH0pOworICAgICAgICB9CisKKyAg
ICAgICAgaWYgKGNvdW50ZXJEaXJlY3RpdmVzLmlzSW5jcmVtZW50KCkpIHsKKyAgICAgICAgICAg
IC8vIFVuZGVmaW5lZCBjb3VudGVyIHZhcmlhYmxlLiBDcmVhdGUgb25lIGhlcmUuCisgICAgICAg
ICAgICBpZiAoY291bnRlclZhbHVlcy5pc0VtcHR5KCkpCisgICAgICAgICAgICAgICAgY291bnRl
clZhbHVlcy5hcHBlbmQoeyBjb3VudGVyRGlyZWN0aXZlcy5pbmNyZW1lbnRWYWx1ZSgpLCByZW5k
ZXJlci5wYXJlbnQoKSB9KTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICBjb3Vu
dGVyVmFsdWVzLmxhc3QoKS5tX3ZhbHVlICs9IGNvdW50ZXJEaXJlY3RpdmVzLmluY3JlbWVudFZh
bHVlKCk7CisgICAgICAgIH0KKyAgICB9Cit9CisKK3N0YXRpYyB2b2lkIGNsZWFudXBDb3VudGVy
cyhSZW5kZXJFbGVtZW50JiByZW5kZXJlciwgQ291bnRlcklkZW50aWZpZXJzJiBjb3VudGVySWRl
bnRpZmllclZhbHVlcykKK3sKKyAgICAvLyBMb3NlIHNjb3BlIG9uIHRoZSBjaGlsZCBpZGVudGlm
aWVycy4KKyAgICBmb3IgKGF1dG8mIGNvdW50ZXJJZGVudGlmaWVycyA6IGNvdW50ZXJJZGVudGlm
aWVyVmFsdWVzKSB7CisgICAgICAgIGF1dG8mIGNvdW50ZXJWYWx1ZXMgPSBjb3VudGVySWRlbnRp
ZmllcnMudmFsdWU7CisgICAgICAgIGlmICghY291bnRlclZhbHVlcy5pc0VtcHR5KCkgJiYgY291
bnRlclZhbHVlcy5sYXN0KCkubV9wYXJlbnQgPT0gJnJlbmRlcmVyKSB7CisgICAgICAgICAgICBj
b3VudGVyVmFsdWVzLnJlbW92ZUxhc3QoKTsKKyAgICAgICAgICAgIEFTU0VSVChjb3VudGVyVmFs
dWVzLmlzRW1wdHkoKSB8fCBjb3VudGVyVmFsdWVzLmxhc3QoKS5tX3BhcmVudCAhPSAmcmVuZGVy
ZXIpOworICAgICAgICB9CisgICAgfQorfQorCitzdGF0aWMgdm9pZCByZXNvbHZlQ291bnRlcihS
ZW5kZXJFbGVtZW50JiByZW5kZXJlciwgQ291bnRlcklkZW50aWZpZXJzJiBjb3VudGVySWRlbnRp
ZmllclZhbHVlcykKK3sKKyAgICB1cGRhdGVDb3VudGVyVmFsdWVzKHJlbmRlcmVyLnN0eWxlKCku
Y291bnRlckRpcmVjdGl2ZXMoKSwgY291bnRlcklkZW50aWZpZXJWYWx1ZXMsIHJlbmRlcmVyKTsK
KworICAgIGZvciAoYXV0byogY2hpbGQgPSByZW5kZXJlci5maXJzdENoaWxkKCk7IGNoaWxkOyBj
aGlsZCA9IGNoaWxkLT5uZXh0U2libGluZygpKSB7CisgICAgICAgIGlmIChpczxSZW5kZXJDb3Vu
dGVyPigqY2hpbGQpKSB7CisgICAgICAgICAgICB1cGRhdGVSZW5kZXJDb3VudGVyVGV4dChkb3du
Y2FzdDxSZW5kZXJDb3VudGVyPigqY2hpbGQpLCBjb3VudGVySWRlbnRpZmllclZhbHVlcyk7Cisg
ICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgfQorICAgICAgICBpZiAoIWlzPFJlbmRlckVs
ZW1lbnQ+KCpjaGlsZCkpCisgICAgICAgICAgICBjb250aW51ZTsKKworICAgICAgICByZXNvbHZl
Q291bnRlcihkb3duY2FzdDxSZW5kZXJFbGVtZW50PigqY2hpbGQpLCBjb3VudGVySWRlbnRpZmll
clZhbHVlcyk7CisgICAgfQorCisgICAgY2xlYW51cENvdW50ZXJzKHJlbmRlcmVyLCBjb3VudGVy
SWRlbnRpZmllclZhbHVlcyk7Cit9CisKIHZvaWQgUmVuZGVyVmlldzo6bGF5b3V0KCkKIHsKKyAg
ICBDb3VudGVySWRlbnRpZmllcnMgY291bnRlcklkZW50aWZpZXJWYWx1ZXM7CisgICAgcmVzb2x2
ZUNvdW50ZXIoKnRoaXMsIGNvdW50ZXJJZGVudGlmaWVyVmFsdWVzKTsKKwogICAgIFN0YWNrU3Rh
dHM6OkxheW91dENoZWNrUG9pbnQgbGF5b3V0Q2hlY2tQb2ludDsKICAgICBpZiAoIWRvY3VtZW50
KCkucGFnaW5hdGVkKCkpCiAgICAgICAgIHNldFBhZ2VMb2dpY2FsSGVpZ2h0KDApOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>