<?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>106961</bug_id>
          
          <creation_ts>2013-01-15 17:02:52 -0800</creation_ts>
          <short_desc>Add the ability for a RenderLayerBacking to have a layer that renders backgrounds.</short_desc>
          <delta_ts>2013-01-15 18:03:24 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Simon Fraser (smfr)">simon.fraser</reporter>
          <assigned_to name="Simon Fraser (smfr)">simon.fraser</assigned_to>
          <cc>bdakin</cc>
    
    <cc>dino</cc>
    
    <cc>eric</cc>
    
    <cc>ojan.autocc</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>807831</commentid>
    <comment_count>0</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2013-01-15 17:02:52 -0800</bug_when>
    <thetext>Add the ability for a RenderLayerBacking to have a layer that renders backgrounds.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>807858</commentid>
    <comment_count>1</comment_count>
      <attachid>182885</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2013-01-15 17:40:23 -0800</bug_when>
    <thetext>Created attachment 182885
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>807872</commentid>
    <comment_count>2</comment_count>
      <attachid>182885</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2013-01-15 17:58:02 -0800</bug_when>
    <thetext>Comment on attachment 182885
Patch

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

&gt; Source/WebCore/ChangeLog:8
&gt; +        In some cases we need a compositing layer to renders its background into

missing words near &quot;to renders&quot;

&gt; Source/WebCore/rendering/RenderLayerBacking.cpp:759
&gt; +        FloatSize backgroundSize = contentsSize;
&gt; +        IntSize backgroundOffset = m_graphicsLayer-&gt;offsetFromRenderer();
&gt; +        m_backgroundLayer-&gt;setPosition(FloatPoint());
&gt; +        if (backgroundSize != m_backgroundLayer-&gt;size()) {
&gt; +            m_backgroundLayer-&gt;setSize(backgroundSize);

Why do you need the local variable backgroundSize?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>807876</commentid>
    <comment_count>3</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2013-01-15 18:00:27 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; &gt; Source/WebCore/rendering/RenderLayerBacking.cpp:759
&gt; &gt; +        FloatSize backgroundSize = contentsSize;
&gt; &gt; +        IntSize backgroundOffset = m_graphicsLayer-&gt;offsetFromRenderer();
&gt; &gt; +        m_backgroundLayer-&gt;setPosition(FloatPoint());
&gt; &gt; +        if (backgroundSize != m_backgroundLayer-&gt;size()) {
&gt; &gt; +            m_backgroundLayer-&gt;setSize(backgroundSize);
&gt; 
&gt; Why do you need the local variable backgroundSize?

This will be used later!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>807880</commentid>
    <comment_count>4</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2013-01-15 18:03:24 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/139815</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>182885</attachid>
            <date>2013-01-15 17:40:23 -0800</date>
            <delta_ts>2013-01-15 17:58:02 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-106961-20130115173724.patch</filename>
            <type>text/plain</type>
            <size>18231</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM5ODAyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzJkMGVmZTRjYTg2NjNm
NmI5YjU2MTgyOTgzNTU2MTFhODMyZjgwOC4uMzYxYTA1NzE3MmZhZGMxYWY0OTAyNzBlZThhZDhl
MmE3NDIzYzY4YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDU1IEBACiAyMDEzLTAxLTE1ICBTaW1v
biBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCisgICAgICAgIEFkZCB0aGUgYWJp
bGl0eSBmb3IgYSBSZW5kZXJMYXllckJhY2tpbmcgdG8gaGF2ZSBhIGxheWVyIHRoYXQgcmVuZGVy
cyBiYWNrZ3JvdW5kcy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTEwNjk2MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIEluIHNvbWUgY2FzZXMgd2UgbmVlZCBhIGNvbXBvc2l0aW5nIGxheWVyIHRvIHJlbmRl
cnMgaXRzIGJhY2tncm91bmQgaW50bworICAgICAgICBhIHNlcGFyYXRlIEdyYXBoaWNzTGF5ZXIg
KGUuZy4gZm9yIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQgaW4gc29tZSBzY2VuYXJpb3Mp
LgorICAgICAgICAKKyAgICAgICAgVG8gc3VwcG9ydCB0aGlzLCBoYXZlIFJlbmRlckxheWVyIG9w
dGlvbmFsbHkgY3JlYXRlIGEgR3JhcGhpY3NMYXllciBmb3IgdGhlIGJhY2tncm91bmQuCisgICAg
ICAgIEN1cnJlbnRseSBub3RoaW5nIGNhdXNlcyBiYWNrZ3JvdW5kIGxheWVycyB0byBnZXQgY3Jl
YXRlZC4KKyAgICAgICAgCisgICAgICAgIEhhdmluZyBhIGJhY2tncm91bmQgbGF5ZXIgcmVxdWly
ZXMgdGhhdCB3ZSBhZGQgYW4gYWRkaXRpb25hbCBjb250YWlubWVudCBsYXllcgorICAgICAgICB3
aGljaCBlbmNsb3NlcyB0aGUgYmFja2dyb3VuZCwgcHJpbWFyeSBhbmQgZm9yZWdyb3VuZCBsYXll
cnMsIHNpbmNlIHRoZSAKKyAgICAgICAgYmFja2dyb3VuZCBsYXllciBoYXMgdG8gYmUgY29tcG9z
aXRlZCBiZWhpbmQgdGhlIHByaW1hcnkgY29udGVudC4gVGhpcyBjb250YWlubWVudAorICAgICAg
ICBsYXllciBnZXRzIGFueSB0cmFuc2Zvcm0sIGluY2x1ZGluZyBwYWdlIHNjYWxlIG9uIHRoZSBS
ZW5kZXJWaWV3J3MgbGF5ZXIuCisgICAgICAgIAorICAgICAgICBObyBuZXcgdGVzdHM7IHRoZXJl
J3Mgbm8gd2F5IHRvIGNyZWF0ZSBhIGJhY2tncm91bmQgbGF5ZXIgeWV0LiBUaGlzIHdhcyB0ZXN0
ZWQgZHVyaW5nCisgICAgICAgIGRldmVsb3BtZW50IGJ5IGZvcmNpbmcgYSBiYWNrZ3JvdW5kIGxh
eWVyLgorCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckxheWVyQmFja2luZy5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJMYXllckJhY2tpbmc6OnVwZGF0ZURlYnVnSW5kaWNhdG9ycyk6
IFNob3cgYm9yZGVycyBvbiBib3RoIG5ldyBsYXllcnMKKyAgICAgICAgYW5kIHJlcGFpbnQgY291
bnRlcnMgb24gdGhlIGJhY2tncm91bmQgbGF5ZXIuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJM
YXllckJhY2tpbmc6OmRlc3Ryb3lHcmFwaGljc0xheWVycyk6IENsZWFyIHRoZSB0d28gbmV3IGxh
eWVycy4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyQmFja2luZzo6dXBkYXRlVHJhbnNm
b3JtKTogSWYgd2UgaGF2ZSBhIGNvbnRhaW5tZW50IGxheWVyLCBpdAorICAgICAgICB0YWtlcyB0
aGUgdHJhbnNmb3JtIChhbmQgY2xlYXIgdGhlIHRyYW5zZm9ybSBvbiB0aGUgcHJpbWFyeSBsYXll
cikuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllckJhY2tpbmc6OnVwZGF0ZUdyYXBoaWNz
TGF5ZXJDb25maWd1cmF0aW9uKTogTWFrZSB0aGUgYmFja2dyb3VuZAorICAgICAgICBsYXllciBp
ZiB3ZSBuZWVkIG9uZSAoY3VycmVudGx5IG5ldmVyKS4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
ckxheWVyQmFja2luZzo6dXBkYXRlR3JhcGhpY3NMYXllckdlb21ldHJ5KTogUG9zaXRpb24gYW5k
IHNpemUKKyAgICAgICAgdGhlIGNvbnRhaW5tZW50IGxheWVyIGlmIHdlIGhhdmUgb25lLiBJZiB3
ZSBkbywgdGhlbiB0aGUgbV9ncmFwaGljc0xheWVyIHdpbGwKKyAgICAgICAgYmUgYXQgMCwwIGlu
IHRoYXQgY29udGFpbm1lbnQgbGF5ZXIuIFRoZSBiYWNrZ3JvdW5kIGxheWVyIGlzIGFsc28gc2l6
ZWQgc2ltaWxhcmx5CisgICAgICAgIHRvIHRoZSBmb3JlZ3JvdW5kIGxheWVyLgorICAgICAgICAo
V2ViQ29yZTo6UmVuZGVyTGF5ZXJCYWNraW5nOjp1cGRhdGVJbnRlcm5hbEhpZXJhcmNoeSk6IEFk
YXB0IHRvIHRoZSBuZXcgaGllcmFyY2h5CisgICAgICAgIHdpdGggY29udGFpbm1lbnQgYW5kIGJh
Y2tncm91bmQgbGF5ZXJzIGlmIHdlIGhhdmUgdGhlbS4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
ckxheWVyQmFja2luZzo6dXBkYXRlQmFja2dyb3VuZExheWVyKTogSGVyZSdzIHdoZXJlIHdlIGNy
ZWF0ZSB0aGUgYmFja2dyb3VuZAorICAgICAgICBhbmQgY29udGFpbm1lbnQgbGF5ZXJzLgorICAg
ICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXJCYWNraW5nOjpjaGlsZEZvclN1cGVybGF5ZXJzKTog
SWYgd2UgaGF2ZSBhIGNvbnRhaW5tZW50IGxheWVyLCB0aGF0J3MKKyAgICAgICAgd2hhdCBnZXRz
IGF0dGFjaGVkIHRvIG91ciBwYXJlbnQuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllckJh
Y2tpbmc6OmdldEN1cnJlbnRUcmFuc2Zvcm0pOiBUaGUgY29udGFpbm1lbnQgbGF5ZXIgZ2V0cyB0
aGUgdHJhbnNmb3JtCisgICAgICAgIGlmIHdlIGhhdmUgb25lLCBzbyBjaGVjayB0aGF0IGhlcmUu
CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllckJhY2tpbmc6OmJhY2tpbmdTdG9yZU1lbW9y
eUVzdGltYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyQmFja2luZzo6cmVwb3J0
TWVtb3J5VXNhZ2UpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJMYXllckJhY2tpbmcuaDoK
KyAgICAgICAgKFJlbmRlckxheWVyQmFja2luZyk6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRl
ckxheWVyQ29tcG9zaXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllckNvbXBv
c2l0b3I6OmRldmljZU9yUGFnZVNjYWxlRmFjdG9yQ2hhbmdlZCk6IFdlIG5lZWQgdG8gc3RhcnQg
bm90aWZ5aW5nCisgICAgICAgIGFib3V0IHBhZ2UvZGV2aWNlIHNjYWxlIG9uIHRoZSBjb250YWlu
bWVudCBsYXllciBpZiB0aGVyZSBpcyBvbmUgKHNpbmNlIGl0IHRha2VzIHBhZ2Ugc2NhbGUpLCBz
bworICAgICAgICB1c2UgY2hpbGRGb3JTdXBlcmxheWVycygpIHJhdGhlciB0aGFuIGp1c3QgZ2V0
dGluZyB0aGUgcHJpbWFyeSBsYXllci4KKworMjAxMy0wMS0xNSAgU2ltb24gRnJhc2VyICA8c2lt
b24uZnJhc2VyQGFwcGxlLmNvbT4KKwogICAgICAgICBTb21lIFNjcm9sbGluZ0Nvw7ZyZGluYXRv
ci1yZWxhdGVkIGNsZWFudXAgaW4gUmVuZGVyTGF5ZXJCYWNraW5nCiAgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDY5NTAKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQmFja2luZy5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJCYWNraW5nLmNwcAppbmRleCBjNTQ4NDkxYjViMmNk
MjFkMmVlZDZhOTdkZTA3ZDdlMmRiOWFjNWMwLi41MTcyMTQwYjNiMDdmMTk3ZWUxZTVhOWVhODk0
ZjU3ZWUzYzYyMjZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
TGF5ZXJCYWNraW5nLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5
ZXJCYWNraW5nLmNwcApAQCAtMjMzLDYgKzIzMywxNCBAQCB2b2lkIFJlbmRlckxheWVyQmFja2lu
Zzo6dXBkYXRlRGVidWdJbmRpY2F0b3JzKGJvb2wgc2hvd0JvcmRlciwgYm9vbCBzaG93UmVwYWlu
dAogICAgICAgICBtX2ZvcmVncm91bmRMYXllci0+c2V0U2hvd0RlYnVnQm9yZGVyKHNob3dCb3Jk
ZXIpOwogICAgICAgICBtX2ZvcmVncm91bmRMYXllci0+c2V0U2hvd1JlcGFpbnRDb3VudGVyKHNo
b3dSZXBhaW50Q291bnRlcik7CiAgICAgfQorICAgIAorICAgIGlmIChtX2NvbnRlbnRzQ29udGFp
bm1lbnRMYXllcikKKyAgICAgICAgbV9jb250ZW50c0NvbnRhaW5tZW50TGF5ZXItPnNldFNob3dE
ZWJ1Z0JvcmRlcihzaG93Qm9yZGVyKTsKKyAgICAKKyAgICBpZiAobV9iYWNrZ3JvdW5kTGF5ZXIp
IHsKKyAgICAgICAgbV9iYWNrZ3JvdW5kTGF5ZXItPnNldFNob3dEZWJ1Z0JvcmRlcihzaG93Qm9y
ZGVyKTsKKyAgICAgICAgbV9iYWNrZ3JvdW5kTGF5ZXItPnNldFNob3dSZXBhaW50Q291bnRlcihz
aG93UmVwYWludENvdW50ZXIpOworICAgIH0KIAogICAgIGlmIChtX21hc2tMYXllcikgewogICAg
ICAgICBtX21hc2tMYXllci0+c2V0U2hvd0RlYnVnQm9yZGVyKHNob3dCb3JkZXIpOwpAQCAtMzA5
LDggKzMxNywxMCBAQCB2b2lkIFJlbmRlckxheWVyQmFja2luZzo6ZGVzdHJveUdyYXBoaWNzTGF5
ZXJzKCkKICAgICAgICAgbV9ncmFwaGljc0xheWVyLT5yZW1vdmVGcm9tUGFyZW50KCk7CiAKICAg
ICBtX2FuY2VzdG9yQ2xpcHBpbmdMYXllciA9IG51bGxwdHI7CisgICAgbV9jb250ZW50c0NvbnRh
aW5tZW50TGF5ZXIgPSBudWxscHRyOwogICAgIG1fZ3JhcGhpY3NMYXllciA9IG51bGxwdHI7CiAg
ICAgbV9mb3JlZ3JvdW5kTGF5ZXIgPSBudWxscHRyOworICAgIG1fYmFja2dyb3VuZExheWVyID0g
bnVsbHB0cjsKICAgICBtX2NoaWxkQ29udGFpbm1lbnRMYXllciA9IG51bGxwdHI7CiAgICAgbV9t
YXNrTGF5ZXIgPSBudWxscHRyOwogCkBAIC0zMzMsNyArMzQzLDExIEBAIHZvaWQgUmVuZGVyTGF5
ZXJCYWNraW5nOjp1cGRhdGVUcmFuc2Zvcm0oY29uc3QgUmVuZGVyU3R5bGUqIHN0eWxlKQogICAg
ICAgICBtYWtlTWF0cml4UmVuZGVyYWJsZSh0LCBjb21wb3NpdG9yKCktPmNhblJlbmRlcjNEVHJh
bnNmb3JtcygpKTsKICAgICB9CiAgICAgCi0gICAgbV9ncmFwaGljc0xheWVyLT5zZXRUcmFuc2Zv
cm0odCk7CisgICAgaWYgKG1fY29udGVudHNDb250YWlubWVudExheWVyKSB7CisgICAgICAgIG1f
Y29udGVudHNDb250YWlubWVudExheWVyLT5zZXRUcmFuc2Zvcm0odCk7CisgICAgICAgIG1fZ3Jh
cGhpY3NMYXllci0+c2V0VHJhbnNmb3JtKFRyYW5zZm9ybWF0aW9uTWF0cml4KCkpOworICAgIH0g
ZWxzZQorICAgICAgICBtX2dyYXBoaWNzTGF5ZXItPnNldFRyYW5zZm9ybSh0KTsKIH0KIAogI2lm
IEVOQUJMRShDU1NfRklMVEVSUykKQEAgLTQ2NSw2ICs0NzksMTEgQEAgYm9vbCBSZW5kZXJMYXll
ckJhY2tpbmc6OnVwZGF0ZUdyYXBoaWNzTGF5ZXJDb25maWd1cmF0aW9uKCkKICAgICBtX293bmlu
Z0xheWVyLT51cGRhdGVaT3JkZXJMaXN0cygpOwogCiAgICAgYm9vbCBsYXllckNvbmZpZ0NoYW5n
ZWQgPSBmYWxzZTsKKyAgICAKKyAgICAvLyBGSVhNRTogVGhlIGJhY2tncm91bmQgbGF5ZXIgaXMg
Y3VycmVudGx5IHVudXNlZC4KKyAgICBpZiAodXBkYXRlQmFja2dyb3VuZExheWVyKGZhbHNlKSkK
KyAgICAgICAgbGF5ZXJDb25maWdDaGFuZ2VkID0gdHJ1ZTsKKwogICAgIGlmICh1cGRhdGVGb3Jl
Z3JvdW5kTGF5ZXIoY29tcG9zaXRvci0+bmVlZHNDb250ZW50c0NvbXBvc2l0aW5nTGF5ZXIobV9v
d25pbmdMYXllcikpKQogICAgICAgICBsYXllckNvbmZpZ0NoYW5nZWQgPSB0cnVlOwogICAgIApA
QCAtNTc2LDcgKzU5NSw5IEBAIHZvaWQgUmVuZGVyTGF5ZXJCYWNraW5nOjp1cGRhdGVHcmFwaGlj
c0xheWVyR2VvbWV0cnkoKQogICAgIG1fZ3JhcGhpY3NMYXllci0+c2V0Q29udGVudHNWaXNpYmxl
KG1fb3duaW5nTGF5ZXItPmhhc1Zpc2libGVDb250ZW50KCkgfHwgaGFzVmlzaWJsZU5vbkNvbXBv
c2l0aW5nRGVzY2VuZGFudExheWVycygpKTsKIAogICAgIFJlbmRlclN0eWxlKiBzdHlsZSA9IHJl
bmRlcmVyKCktPnN0eWxlKCk7Ci0gICAgbV9ncmFwaGljc0xheWVyLT5zZXRQcmVzZXJ2ZXMzRChz
dHlsZS0+dHJhbnNmb3JtU3R5bGUzRCgpID09IFRyYW5zZm9ybVN0eWxlM0RQcmVzZXJ2ZTNEICYm
ICFyZW5kZXJlcigpLT5oYXNSZWZsZWN0aW9uKCkpOworICAgIC8vIEZJWE1FOiByZWZsZWN0aW9u
cyBzaG91bGQgZm9yY2UgdHJhbnNmb3JtLXN0eWxlIHRvIGJlIGZsYXQgaW4gdGhlIHN0eWxlOiBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA2OTU5CisgICAgYm9vbCBw
cmVzZXJ2ZXMzRCA9IHN0eWxlLT50cmFuc2Zvcm1TdHlsZTNEKCkgPT0gVHJhbnNmb3JtU3R5bGUz
RFByZXNlcnZlM0QgJiYgIXJlbmRlcmVyKCktPmhhc1JlZmxlY3Rpb24oKTsKKyAgICBtX2dyYXBo
aWNzTGF5ZXItPnNldFByZXNlcnZlczNEKHByZXNlcnZlczNEKTsKICAgICBtX2dyYXBoaWNzTGF5
ZXItPnNldEJhY2tmYWNlVmlzaWJpbGl0eShzdHlsZS0+YmFja2ZhY2VWaXNpYmlsaXR5KCkgPT0g
QmFja2ZhY2VWaXNpYmlsaXR5VmlzaWJsZSk7CiAKICAgICBSZW5kZXJMYXllciogY29tcEFuY2Vz
dG9yID0gbV9vd25pbmdMYXllci0+YW5jZXN0b3JDb21wb3NpdGluZ0xheWVyKCk7CkBAIC02MzAs
MTMgKzY1MSwyMiBAQCB2b2lkIFJlbmRlckxheWVyQmFja2luZzo6dXBkYXRlR3JhcGhpY3NMYXll
ckdlb21ldHJ5KCkKICAgICAgICAgZ3JhcGhpY3NMYXllclBhcmVudExvY2F0aW9uID0gcGFyZW50
Q2xpcFJlY3QubG9jYXRpb24oKTsKICAgICB9CiAKKyAgICBGbG9hdFNpemUgY29udGVudHNTaXpl
ID0gcmVsYXRpdmVDb21wb3NpdGluZ0JvdW5kcy5zaXplKCk7CisgICAgCisgICAgaWYgKG1fY29u
dGVudHNDb250YWlubWVudExheWVyKSB7CisgICAgICAgIG1fY29udGVudHNDb250YWlubWVudExh
eWVyLT5zZXRQcmVzZXJ2ZXMzRChwcmVzZXJ2ZXMzRCk7CisgICAgICAgIG1fY29udGVudHNDb250
YWlubWVudExheWVyLT5zZXRQb3NpdGlvbihGbG9hdFBvaW50KHJlbGF0aXZlQ29tcG9zaXRpbmdC
b3VuZHMubG9jYXRpb24oKSAtIGdyYXBoaWNzTGF5ZXJQYXJlbnRMb2NhdGlvbikpOworICAgICAg
ICAvLyBVc2UgdGhlIHNhbWUgc2l6ZSBhcyBtX2dyYXBoaWNzTGF5ZXIgc28gdHJhbnNmb3JtcyBi
ZWhhdmUgY29ycmVjdGx5LgorICAgICAgICBtX2NvbnRlbnRzQ29udGFpbm1lbnRMYXllci0+c2V0
U2l6ZShjb250ZW50c1NpemUpOworICAgICAgICBncmFwaGljc0xheWVyUGFyZW50TG9jYXRpb24g
PSByZWxhdGl2ZUNvbXBvc2l0aW5nQm91bmRzLmxvY2F0aW9uKCk7CisgICAgfQorCiAgICAgbV9n
cmFwaGljc0xheWVyLT5zZXRQb3NpdGlvbihGbG9hdFBvaW50KHJlbGF0aXZlQ29tcG9zaXRpbmdC
b3VuZHMubG9jYXRpb24oKSAtIGdyYXBoaWNzTGF5ZXJQYXJlbnRMb2NhdGlvbikpOwogICAgIG1f
Z3JhcGhpY3NMYXllci0+c2V0T2Zmc2V0RnJvbVJlbmRlcmVyKHRvSW50U2l6ZShsb2NhbENvbXBv
c2l0aW5nQm91bmRzLmxvY2F0aW9uKCkpKTsKICAgICAKICAgICBGbG9hdFNpemUgb2xkU2l6ZSA9
IG1fZ3JhcGhpY3NMYXllci0+c2l6ZSgpOwotICAgIEZsb2F0U2l6ZSBuZXdTaXplID0gcmVsYXRp
dmVDb21wb3NpdGluZ0JvdW5kcy5zaXplKCk7Ci0gICAgaWYgKG9sZFNpemUgIT0gbmV3U2l6ZSkg
ewotICAgICAgICBtX2dyYXBoaWNzTGF5ZXItPnNldFNpemUobmV3U2l6ZSk7CisgICAgaWYgKG9s
ZFNpemUgIT0gY29udGVudHNTaXplKSB7CisgICAgICAgIG1fZ3JhcGhpY3NMYXllci0+c2V0U2l6
ZShjb250ZW50c1NpemUpOwogICAgICAgICAvLyBVc3VhbGx5IGludmFsaWRhdGlvbiB3aWxsIGhh
cHBlbiB2aWEgbGF5b3V0IGV0YywgYnV0IGlmIHdlJ3ZlIGFmZmVjdGVkIHRoZSBsYXllcgogICAg
ICAgICAvLyBzaXplIGJ5IGNvbnN0cmFpbmluZyByZWxhdGl2ZSB0byBhIGNsaXBwaW5nIGFuY2Vz
dG9yIG9yIHRoZSB2aWV3cG9ydCwgd2UKICAgICAgICAgLy8gaGF2ZSB0byBpbnZhbGlkYXRlIHRv
IGF2b2lkIHNob3dpbmcgc3RyZXRjaGVkIGNvbnRlbnQuCkBAIC02NzQsNyArNzA0LDEwIEBAIHZv
aWQgUmVuZGVyTGF5ZXJCYWNraW5nOjp1cGRhdGVHcmFwaGljc0xheWVyR2VvbWV0cnkoKQogICAg
ICAgICBGbG9hdFBvaW50M0QgYW5jaG9yKHJlbGF0aXZlQ29tcG9zaXRpbmdCb3VuZHMud2lkdGgo
KSAgIT0gMC4wZiA/ICgobGF5ZXJCb3VuZHMueCgpIC0gcmVsYXRpdmVDb21wb3NpdGluZ0JvdW5k
cy54KCkpICsgdHJhbnNmb3JtT3JpZ2luLngoKSkgLyByZWxhdGl2ZUNvbXBvc2l0aW5nQm91bmRz
LndpZHRoKCkgIDogMC41ZiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWxhdGl2ZUNv
bXBvc2l0aW5nQm91bmRzLmhlaWdodCgpICE9IDAuMGYgPyAoKGxheWVyQm91bmRzLnkoKSAtIHJl
bGF0aXZlQ29tcG9zaXRpbmdCb3VuZHMueSgpKSArIHRyYW5zZm9ybU9yaWdpbi55KCkpIC8gcmVs
YXRpdmVDb21wb3NpdGluZ0JvdW5kcy5oZWlnaHQoKSA6IDAuNWYsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdHJhbnNmb3JtT3JpZ2luLnooKSk7Ci0gICAgICAgIG1fZ3JhcGhpY3NMYXll
ci0+c2V0QW5jaG9yUG9pbnQoYW5jaG9yKTsKKyAgICAgICAgaWYgKG1fY29udGVudHNDb250YWlu
bWVudExheWVyKQorICAgICAgICAgICAgbV9jb250ZW50c0NvbnRhaW5tZW50TGF5ZXItPnNldEFu
Y2hvclBvaW50KGFuY2hvcik7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIG1fZ3JhcGhpY3NM
YXllci0+c2V0QW5jaG9yUG9pbnQoYW5jaG9yKTsKIAogICAgICAgICBSZW5kZXJTdHlsZSogc3R5
bGUgPSByZW5kZXJlcigpLT5zdHlsZSgpOwogICAgICAgICBHcmFwaGljc0xheWVyKiBjbGlwTGF5
ZXIgPSBjbGlwcGluZ0xheWVyKCk7CkBAIC02OTUsMTEgKzcyOCwxMyBAQCB2b2lkIFJlbmRlckxh
eWVyQmFja2luZzo6dXBkYXRlR3JhcGhpY3NMYXllckdlb21ldHJ5KCkKICAgICAgICAgfQogICAg
IH0gZWxzZSB7CiAgICAgICAgIG1fZ3JhcGhpY3NMYXllci0+c2V0QW5jaG9yUG9pbnQoRmxvYXRQ
b2ludDNEKDAuNWYsIDAuNWYsIDApKTsKKyAgICAgICAgaWYgKG1fY29udGVudHNDb250YWlubWVu
dExheWVyKQorICAgICAgICAgICAgbV9jb250ZW50c0NvbnRhaW5tZW50TGF5ZXItPnNldEFuY2hv
clBvaW50KEZsb2F0UG9pbnQzRCgwLjVmLCAwLjVmLCAwKSk7CiAgICAgfQogCiAgICAgaWYgKG1f
Zm9yZWdyb3VuZExheWVyKSB7CiAgICAgICAgIEZsb2F0UG9pbnQgZm9yZWdyb3VuZFBvc2l0aW9u
OwotICAgICAgICBGbG9hdFNpemUgZm9yZWdyb3VuZFNpemUgPSBuZXdTaXplOworICAgICAgICBG
bG9hdFNpemUgZm9yZWdyb3VuZFNpemUgPSBjb250ZW50c1NpemU7CiAgICAgICAgIEludFNpemUg
Zm9yZWdyb3VuZE9mZnNldCA9IG1fZ3JhcGhpY3NMYXllci0+b2Zmc2V0RnJvbVJlbmRlcmVyKCk7
CiAgICAgICAgIGlmIChoYXNDbGlwcGluZ0xheWVyKCkpIHsKICAgICAgICAgICAgIC8vIElmIHdl
IGhhdmUgYSBjbGlwcGluZyBsYXllciAod2hpY2ggY2xpcHMgZGVzY2VuZGFudHMpLCB0aGVuIHRo
ZSBmb3JlZ3JvdW5kIGxheWVyIGlzIGEgY2hpbGQgb2YgaXQsCkBAIC03MTYsNiArNzUxLDE3IEBA
IHZvaWQgUmVuZGVyTGF5ZXJCYWNraW5nOjp1cGRhdGVHcmFwaGljc0xheWVyR2VvbWV0cnkoKQog
ICAgICAgICBtX2ZvcmVncm91bmRMYXllci0+c2V0T2Zmc2V0RnJvbVJlbmRlcmVyKGZvcmVncm91
bmRPZmZzZXQpOwogICAgIH0KIAorICAgIGlmIChtX2JhY2tncm91bmRMYXllcikgeworICAgICAg
ICBGbG9hdFNpemUgYmFja2dyb3VuZFNpemUgPSBjb250ZW50c1NpemU7CisgICAgICAgIEludFNp
emUgYmFja2dyb3VuZE9mZnNldCA9IG1fZ3JhcGhpY3NMYXllci0+b2Zmc2V0RnJvbVJlbmRlcmVy
KCk7CisgICAgICAgIG1fYmFja2dyb3VuZExheWVyLT5zZXRQb3NpdGlvbihGbG9hdFBvaW50KCkp
OworICAgICAgICBpZiAoYmFja2dyb3VuZFNpemUgIT0gbV9iYWNrZ3JvdW5kTGF5ZXItPnNpemUo
KSkgeworICAgICAgICAgICAgbV9iYWNrZ3JvdW5kTGF5ZXItPnNldFNpemUoYmFja2dyb3VuZFNp
emUpOworICAgICAgICAgICAgbV9iYWNrZ3JvdW5kTGF5ZXItPnNldE5lZWRzRGlzcGxheSgpOwor
ICAgICAgICB9CisgICAgICAgIG1fYmFja2dyb3VuZExheWVyLT5zZXRPZmZzZXRGcm9tUmVuZGVy
ZXIoYmFja2dyb3VuZE9mZnNldCk7CisgICAgfQorCiAgICAgaWYgKG1fb3duaW5nTGF5ZXItPnJl
ZmxlY3Rpb25MYXllcigpICYmIG1fb3duaW5nTGF5ZXItPnJlZmxlY3Rpb25MYXllcigpLT5pc0Nv
bXBvc2l0ZWQoKSkgewogICAgICAgICBSZW5kZXJMYXllckJhY2tpbmcqIHJlZmxlY3Rpb25CYWNr
aW5nID0gbV9vd25pbmdMYXllci0+cmVmbGVjdGlvbkxheWVyKCktPmJhY2tpbmcoKTsKICAgICAg
ICAgcmVmbGVjdGlvbkJhY2tpbmctPnVwZGF0ZUdyYXBoaWNzTGF5ZXJHZW9tZXRyeSgpOwpAQCAt
NzkyLDExICs4MzgsMjMgQEAgdm9pZCBSZW5kZXJMYXllckJhY2tpbmc6OnVwZGF0ZUludGVybmFs
SGllcmFyY2h5KCkKIHsKICAgICAvLyBtX2ZvcmVncm91bmRMYXllciBoYXMgdG8gYmUgaW5zZXJ0
ZWQgaW4gdGhlIGNvcnJlY3Qgb3JkZXIgd2l0aCBjaGlsZCBsYXllcnMsCiAgICAgLy8gc28gaXQn
cyBub3QgaW5zZXJ0ZWQgaGVyZS4KLSAgICBpZiAobV9hbmNlc3RvckNsaXBwaW5nTGF5ZXIpIHsK
KyAgICBpZiAobV9hbmNlc3RvckNsaXBwaW5nTGF5ZXIpCiAgICAgICAgIG1fYW5jZXN0b3JDbGlw
cGluZ0xheWVyLT5yZW1vdmVBbGxDaGlsZHJlbigpOwotICAgICAgICBtX2dyYXBoaWNzTGF5ZXIt
PnJlbW92ZUZyb21QYXJlbnQoKTsKLSAgICAgICAgbV9hbmNlc3RvckNsaXBwaW5nTGF5ZXItPmFk
ZENoaWxkKG1fZ3JhcGhpY3NMYXllci5nZXQoKSk7CisgICAgCisgICAgaWYgKG1fY29udGVudHND
b250YWlubWVudExheWVyKSB7CisgICAgICAgIG1fY29udGVudHNDb250YWlubWVudExheWVyLT5y
ZW1vdmVBbGxDaGlsZHJlbigpOworICAgICAgICBpZiAobV9hbmNlc3RvckNsaXBwaW5nTGF5ZXIp
CisgICAgICAgICAgICBtX2FuY2VzdG9yQ2xpcHBpbmdMYXllci0+YWRkQ2hpbGQobV9jb250ZW50
c0NvbnRhaW5tZW50TGF5ZXIuZ2V0KCkpOwogICAgIH0KKyAgICAKKyAgICBpZiAobV9iYWNrZ3Jv
dW5kTGF5ZXIpCisgICAgICAgIG1fY29udGVudHNDb250YWlubWVudExheWVyLT5hZGRDaGlsZCht
X2dyYXBoaWNzTGF5ZXIuZ2V0KCkpOworCisgICAgbV9ncmFwaGljc0xheWVyLT5yZW1vdmVGcm9t
UGFyZW50KCk7CisgICAgaWYgKG1fY29udGVudHNDb250YWlubWVudExheWVyKQorICAgICAgICBt
X2NvbnRlbnRzQ29udGFpbm1lbnRMYXllci0+YWRkQ2hpbGQobV9ncmFwaGljc0xheWVyLmdldCgp
KTsKKyAgICBlbHNlIGlmIChtX2FuY2VzdG9yQ2xpcHBpbmdMYXllcikKKyAgICAgICAgbV9hbmNl
c3RvckNsaXBwaW5nTGF5ZXItPmFkZENoaWxkKG1fZ3JhcGhpY3NMYXllci5nZXQoKSk7CiAKICAg
ICBpZiAobV9jaGlsZENvbnRhaW5tZW50TGF5ZXIpIHsKICAgICAgICAgbV9jaGlsZENvbnRhaW5t
ZW50TGF5ZXItPnJlbW92ZUZyb21QYXJlbnQoKTsKQEAgLTEwMzIsNiArMTA5MCw0OSBAQCBib29s
IFJlbmRlckxheWVyQmFja2luZzo6dXBkYXRlRm9yZWdyb3VuZExheWVyKGJvb2wgbmVlZHNGb3Jl
Z3JvdW5kTGF5ZXIpCiAgICAgcmV0dXJuIGxheWVyQ2hhbmdlZDsKIH0KIAorYm9vbCBSZW5kZXJM
YXllckJhY2tpbmc6OnVwZGF0ZUJhY2tncm91bmRMYXllcihib29sIG5lZWRzQmFja2dyb3VuZExh
eWVyKQoreworICAgIGJvb2wgbGF5ZXJDaGFuZ2VkID0gZmFsc2U7CisgICAgaWYgKG5lZWRzQmFj
a2dyb3VuZExheWVyKSB7CisgICAgICAgIGlmICghbV9iYWNrZ3JvdW5kTGF5ZXIpIHsKKyAgICAg
ICAgICAgIFN0cmluZyBsYXllck5hbWU7CisjaWZuZGVmIE5ERUJVRworICAgICAgICAgICAgbGF5
ZXJOYW1lID0gbV9vd25pbmdMYXllci0+bmFtZSgpICsgIiAoYmFja2dyb3VuZCkiOworI2VuZGlm
CisgICAgICAgICAgICBtX2JhY2tncm91bmRMYXllciA9IGNyZWF0ZUdyYXBoaWNzTGF5ZXIobGF5
ZXJOYW1lKTsKKyAgICAgICAgICAgIG1fYmFja2dyb3VuZExheWVyLT5zZXREcmF3c0NvbnRlbnQo
dHJ1ZSk7CisgICAgICAgICAgICBtX2JhY2tncm91bmRMYXllci0+c2V0QW5jaG9yUG9pbnQoRmxv
YXRQb2ludDNEKCkpOworICAgICAgICAgICAgbV9iYWNrZ3JvdW5kTGF5ZXItPnNldFBhaW50aW5n
UGhhc2UoR3JhcGhpY3NMYXllclBhaW50QmFja2dyb3VuZCk7CisgICAgICAgICAgICBsYXllckNo
YW5nZWQgPSB0cnVlOworICAgICAgICB9CisgICAgICAgIAorICAgICAgICBpZiAoIW1fY29udGVu
dHNDb250YWlubWVudExheWVyKSB7CisgICAgICAgICAgICBTdHJpbmcgbGF5ZXJOYW1lOworI2lm
bmRlZiBOREVCVUcKKyAgICAgICAgICAgIGxheWVyTmFtZSA9IG1fb3duaW5nTGF5ZXItPm5hbWUo
KSArICIgKGNvbnRlbnRzIGNvbnRhaW5tZW50KSI7CisjZW5kaWYKKyAgICAgICAgICAgIG1fY29u
dGVudHNDb250YWlubWVudExheWVyID0gY3JlYXRlR3JhcGhpY3NMYXllcihsYXllck5hbWUpOwor
ICAgICAgICAgICAgbV9jb250ZW50c0NvbnRhaW5tZW50TGF5ZXItPnNldEFwcGxpZXNQYWdlU2Nh
bGUodHJ1ZSk7CisgICAgICAgICAgICBtX2dyYXBoaWNzTGF5ZXItPnNldEFwcGxpZXNQYWdlU2Nh
bGUoZmFsc2UpOworICAgICAgICAgICAgbGF5ZXJDaGFuZ2VkID0gdHJ1ZTsKKyAgICAgICAgfQor
ICAgIH0gZWxzZSB7CisgICAgICAgIGlmIChtX2JhY2tncm91bmRMYXllcikgeworICAgICAgICAg
ICAgbV9iYWNrZ3JvdW5kTGF5ZXItPnJlbW92ZUZyb21QYXJlbnQoKTsKKyAgICAgICAgICAgIG1f
YmFja2dyb3VuZExheWVyID0gbnVsbHB0cjsKKyAgICAgICAgICAgIGxheWVyQ2hhbmdlZCA9IHRy
dWU7CisgICAgICAgIH0KKyAgICAgICAgaWYgKG1fY29udGVudHNDb250YWlubWVudExheWVyKSB7
CisgICAgICAgICAgICBtX2NvbnRlbnRzQ29udGFpbm1lbnRMYXllci0+cmVtb3ZlRnJvbVBhcmVu
dCgpOworICAgICAgICAgICAgbV9jb250ZW50c0NvbnRhaW5tZW50TGF5ZXIgPSBudWxscHRyOwor
ICAgICAgICAgICAgbGF5ZXJDaGFuZ2VkID0gdHJ1ZTsKKyAgICAgICAgICAgIG1fZ3JhcGhpY3NM
YXllci0+c2V0QXBwbGllc1BhZ2VTY2FsZSh0cnVlKTsKKyAgICAgICAgfQorICAgIH0KKworICAg
IHJldHVybiBsYXllckNoYW5nZWQ7Cit9CisKIGJvb2wgUmVuZGVyTGF5ZXJCYWNraW5nOjp1cGRh
dGVNYXNrTGF5ZXIoYm9vbCBuZWVkc01hc2tMYXllcikKIHsKICAgICBib29sIGxheWVyQ2hhbmdl
ZCA9IGZhbHNlOwpAQCAtMTU0OCw2ICsxNjQ5LDE3IEBAIEdyYXBoaWNzTGF5ZXIqIFJlbmRlckxh
eWVyQmFja2luZzo6cGFyZW50Rm9yU3VibGF5ZXJzKCkgY29uc3QKICAgICByZXR1cm4gbV9jaGls
ZENvbnRhaW5tZW50TGF5ZXIgPyBtX2NoaWxkQ29udGFpbm1lbnRMYXllci5nZXQoKSA6IG1fZ3Jh
cGhpY3NMYXllci5nZXQoKTsKIH0KIAorR3JhcGhpY3NMYXllciogUmVuZGVyTGF5ZXJCYWNraW5n
OjpjaGlsZEZvclN1cGVybGF5ZXJzKCkgY29uc3QKK3sKKyAgICBpZiAobV9hbmNlc3RvckNsaXBw
aW5nTGF5ZXIpCisgICAgICAgIHJldHVybiBtX2FuY2VzdG9yQ2xpcHBpbmdMYXllci5nZXQoKTsK
KworICAgIGlmIChtX2NvbnRlbnRzQ29udGFpbm1lbnRMYXllcikKKyAgICAgICAgcmV0dXJuIG1f
Y29udGVudHNDb250YWlubWVudExheWVyLmdldCgpOworICAgIAorICAgIHJldHVybiBtX2dyYXBo
aWNzTGF5ZXIuZ2V0KCk7Cit9CisKIGJvb2wgUmVuZGVyTGF5ZXJCYWNraW5nOjpwYWludHNJbnRv
V2luZG93KCkgY29uc3QKIHsKICAgICBpZiAobV91c2luZ1RpbGVkQ2FjaGVMYXllcikKQEAgLTE3
MzgsNyArMTg1MCw4IEBAIHZvaWQgUmVuZGVyTGF5ZXJCYWNraW5nOjpkaWRDb21taXRDaGFuZ2Vz
Rm9yTGF5ZXIoY29uc3QgR3JhcGhpY3NMYXllciopIGNvbnN0CiAKIGJvb2wgUmVuZGVyTGF5ZXJC
YWNraW5nOjpnZXRDdXJyZW50VHJhbnNmb3JtKGNvbnN0IEdyYXBoaWNzTGF5ZXIqIGdyYXBoaWNz
TGF5ZXIsIFRyYW5zZm9ybWF0aW9uTWF0cml4JiB0cmFuc2Zvcm0pIGNvbnN0CiB7Ci0gICAgaWYg
KGdyYXBoaWNzTGF5ZXIgIT0gbV9ncmFwaGljc0xheWVyKQorICAgIEdyYXBoaWNzTGF5ZXIqIHRy
YW5zZm9ybWVkTGF5ZXIgPSBtX2NvbnRlbnRzQ29udGFpbm1lbnRMYXllci5nZXQoKSA/IG1fY29u
dGVudHNDb250YWlubWVudExheWVyLmdldCgpIDogbV9ncmFwaGljc0xheWVyLmdldCgpOworICAg
IGlmIChncmFwaGljc0xheWVyICE9IHRyYW5zZm9ybWVkTGF5ZXIpCiAgICAgICAgIHJldHVybiBm
YWxzZTsKIAogICAgIGlmIChtX293bmluZ0xheWVyLT5oYXNUcmFuc2Zvcm0oKSkgewpAQCAtMjAx
Myw3ICsyMTI2LDcgQEAgZG91YmxlIFJlbmRlckxheWVyQmFja2luZzo6YmFja2luZ1N0b3JlTWVt
b3J5RXN0aW1hdGUoKSBjb25zdAogewogICAgIGRvdWJsZSBiYWNraW5nTWVtb3J5OwogICAgIAot
ICAgIC8vIG1fYW5jZXN0b3JDbGlwcGluZ0xheWVyIGFuZCBtX2NoaWxkQ29udGFpbm1lbnRMYXll
ciBhcmUganVzdCB1c2VkIGZvciBtYXNraW5nIG9yIGNvbnRhaW5tZW50LCBzbyBoYXZlIG5vIGJh
Y2tpbmcuCisgICAgLy8gbV9hbmNlc3RvckNsaXBwaW5nTGF5ZXIsIG1fY29udGVudHNDb250YWlu
bWVudExheWVyIGFuZCBtX2NoaWxkQ29udGFpbm1lbnRMYXllciBhcmUganVzdCB1c2VkIGZvciBt
YXNraW5nIG9yIGNvbnRhaW5tZW50LCBzbyBoYXZlIG5vIGJhY2tpbmcuCiAgICAgYmFja2luZ01l
bW9yeSA9IG1fZ3JhcGhpY3NMYXllci0+YmFja2luZ1N0b3JlTWVtb3J5RXN0aW1hdGUoKTsKICAg
ICBpZiAobV9mb3JlZ3JvdW5kTGF5ZXIpCiAgICAgICAgIGJhY2tpbmdNZW1vcnkgKz0gbV9mb3Jl
Z3JvdW5kTGF5ZXItPmJhY2tpbmdTdG9yZU1lbW9yeUVzdGltYXRlKCk7CkBAIC0yMDU0LDYgKzIx
NjcsNyBAQCB2b2lkIFJlbmRlckxheWVyQmFja2luZzo6cmVwb3J0TWVtb3J5VXNhZ2UoTWVtb3J5
T2JqZWN0SW5mbyogbWVtb3J5T2JqZWN0SW5mbykgYwogICAgIE1lbW9yeUNsYXNzSW5mbyBpbmZv
KG1lbW9yeU9iamVjdEluZm8sIHRoaXMsIFBsYXRmb3JtTWVtb3J5VHlwZXM6OlJlbmRlcmluZyk7
CiAgICAgaW5mby5hZGRXZWFrUG9pbnRlcihtX293bmluZ0xheWVyKTsKICAgICBpbmZvLmFkZE1l
bWJlcihtX2FuY2VzdG9yQ2xpcHBpbmdMYXllcik7CisgICAgaW5mby5hZGRNZW1iZXIobV9jb250
ZW50c0NvbnRhaW5tZW50TGF5ZXIpOwogICAgIGluZm8uYWRkTWVtYmVyKG1fZ3JhcGhpY3NMYXll
cik7CiAgICAgaW5mby5hZGRNZW1iZXIobV9mb3JlZ3JvdW5kTGF5ZXIpOwogICAgIGluZm8uYWRk
TWVtYmVyKG1fY2hpbGRDb250YWlubWVudExheWVyKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckJhY2tpbmcuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJMYXllckJhY2tpbmcuaAppbmRleCBhZDExNzVlM2VhMjY5OTE0M2JkZWUzOTkw
Njk4MmQ3NGY1ZGYzZWFiLi4zODg4NTM2YmJmODlhZTM2ODc5ZTQzMmFiM2IzYTg1MTFmMzg1MWQw
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJCYWNraW5n
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQmFja2luZy5oCkBA
IC0xMDEsNyArMTAxLDcgQEAgcHVibGljOgogICAgIGJvb2wgaGFzTWFza0xheWVyKCkgY29uc3Qg
eyByZXR1cm4gbV9tYXNrTGF5ZXIgIT0gMDsgfQogCiAgICAgR3JhcGhpY3NMYXllciogcGFyZW50
Rm9yU3VibGF5ZXJzKCkgY29uc3Q7Ci0gICAgR3JhcGhpY3NMYXllciogY2hpbGRGb3JTdXBlcmxh
eWVycygpIGNvbnN0IHsgcmV0dXJuIG1fYW5jZXN0b3JDbGlwcGluZ0xheWVyID8gbV9hbmNlc3Rv
ckNsaXBwaW5nTGF5ZXIuZ2V0KCkgOiBtX2dyYXBoaWNzTGF5ZXIuZ2V0KCk7IH0KKyAgICBHcmFw
aGljc0xheWVyKiBjaGlsZEZvclN1cGVybGF5ZXJzKCkgY29uc3Q7CiAKICAgICAvLyBSZW5kZXJM
YXllcnMgd2l0aCBiYWNraW5nIG5vcm1hbGx5IHNob3J0LWNpcmN1aXQgcGFpbnRMYXllcigpIGJl
Y2F1c2UKICAgICAvLyB0aGVpciBjb250ZW50IGlzIHJlbmRlcmVkIHZpYSBjYWxsYmFja3MgZnJv
bSBHcmFwaGljc0xheWVyLiBIb3dldmVyLCB0aGUgZG9jdW1lbnQKQEAgLTIwNCw2ICsyMDQsNyBA
QCBwcml2YXRlOgogICAgIGJvb2wgdXBkYXRlQ2xpcHBpbmdMYXllcnMoYm9vbCBuZWVkc0FuY2Vz
dG9yQ2xpcCwgYm9vbCBuZWVkc0Rlc2NlbmRhbnRDbGlwKTsKICAgICBib29sIHVwZGF0ZU92ZXJm
bG93Q29udHJvbHNMYXllcnMoYm9vbCBuZWVkc0hvcml6b250YWxTY3JvbGxiYXJMYXllciwgYm9v
bCBuZWVkc1ZlcnRpY2FsU2Nyb2xsYmFyTGF5ZXIsIGJvb2wgbmVlZHNTY3JvbGxDb3JuZXJMYXll
cik7CiAgICAgYm9vbCB1cGRhdGVGb3JlZ3JvdW5kTGF5ZXIoYm9vbCBuZWVkc0ZvcmVncm91bmRM
YXllcik7CisgICAgYm9vbCB1cGRhdGVCYWNrZ3JvdW5kTGF5ZXIoYm9vbCBuZWVkc0JhY2tncm91
bmRMYXllcik7CiAgICAgYm9vbCB1cGRhdGVNYXNrTGF5ZXIoYm9vbCBuZWVkc01hc2tMYXllcik7
CiAgICAgYm9vbCByZXF1aXJlc0hvcml6b250YWxTY3JvbGxiYXJMYXllcigpIGNvbnN0OwogICAg
IGJvb2wgcmVxdWlyZXNWZXJ0aWNhbFNjcm9sbGJhckxheWVyKCkgY29uc3Q7CkBAIC0yNjQsOCAr
MjY1LDEwIEBAIHByaXZhdGU6CiAgICAgUmVuZGVyTGF5ZXIqIG1fb3duaW5nTGF5ZXI7CiAKICAg
ICBPd25QdHI8R3JhcGhpY3NMYXllcj4gbV9hbmNlc3RvckNsaXBwaW5nTGF5ZXI7IC8vIE9ubHkg
dXNlZCBpZiB3ZSBhcmUgY2xpcHBlZCBieSBhbiBhbmNlc3RvciB3aGljaCBpcyBub3QgYSBzdGFj
a2luZyBjb250ZXh0LgorICAgIE93blB0cjxHcmFwaGljc0xheWVyPiBtX2NvbnRlbnRzQ29udGFp
bm1lbnRMYXllcjsgLy8gT25seSB1c2VkIGlmIHdlIGhhdmUgYSBiYWNrZ3JvdW5kIGxheWVyOyB0
YWtlcyB0aGUgdHJhbnNmb3JtLgogICAgIE93blB0cjxHcmFwaGljc0xheWVyPiBtX2dyYXBoaWNz
TGF5ZXI7CiAgICAgT3duUHRyPEdyYXBoaWNzTGF5ZXI+IG1fZm9yZWdyb3VuZExheWVyOyAvLyBP
bmx5IHVzZWQgaW4gY2FzZXMgd2hlcmUgd2UgbmVlZCB0byBkcmF3IHRoZSBmb3JlZ3JvdW5kIHNl
cGFyYXRlbHkuCisgICAgT3duUHRyPEdyYXBoaWNzTGF5ZXI+IG1fYmFja2dyb3VuZExheWVyOyAv
LyBPbmx5IHVzZWQgaW4gY2FzZXMgd2hlcmUgd2UgbmVlZCB0byBkcmF3IHRoZSBiYWNrZ3JvdW5k
IHNlcGFyYXRlbHkuCiAgICAgT3duUHRyPEdyYXBoaWNzTGF5ZXI+IG1fY2hpbGRDb250YWlubWVu
dExheWVyOyAvLyBPbmx5IHVzZWQgaWYgd2UgaGF2ZSBjbGlwcGluZyBvbiBhIHN0YWNraW5nIGNv
bnRleHQgd2l0aCBjb21wb3NpdGluZyBjaGlsZHJlbiwgb3IgaWYgdGhlIGxheWVyIGhhcyBhIHRp
bGUgY2FjaGUuCiAgICAgT3duUHRyPEdyYXBoaWNzTGF5ZXI+IG1fbWFza0xheWVyOyAvLyBPbmx5
IHVzZWQgaWYgd2UgaGF2ZSBhIG1hc2suCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlckxheWVyQ29tcG9zaXRvci5jcHAKaW5kZXggMWRlM2Y4OGRmMGU0ODMwMTkwNmNk
ZDU3YjY5NzQxMGNjODY1YzZiMC4uZDFlYjRmYTQ1ZTU0NGU2NzRjZjVhMTRlNDUzZmQyMjBiYWI4
ZGY0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQ29t
cG9zaXRvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQ29t
cG9zaXRvci5jcHAKQEAgLTI2MjYsNyArMjYyNiw3IEBAIHZvaWQgUmVuZGVyTGF5ZXJDb21wb3Np
dG9yOjpkZXZpY2VPclBhZ2VTY2FsZUZhY3RvckNoYW5nZWQoKQogICAgIGlmICghdmlld0xheWVy
LT5pc0NvbXBvc2l0ZWQoKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgaWYgKEdyYXBoaWNzTGF5
ZXIqIHJvb3RMYXllciA9IHZpZXdMYXllci0+YmFja2luZygpLT5ncmFwaGljc0xheWVyKCkpCisg
ICAgaWYgKEdyYXBoaWNzTGF5ZXIqIHJvb3RMYXllciA9IHZpZXdMYXllci0+YmFja2luZygpLT5j
aGlsZEZvclN1cGVybGF5ZXJzKCkpCiAgICAgICAgIHJvb3RMYXllci0+bm90ZURldmljZU9yUGFn
ZVNjYWxlRmFjdG9yQ2hhbmdlZEluY2x1ZGluZ0Rlc2NlbmRhbnRzKCk7CiB9CiAK
</data>
<flag name="review"
          id="201050"
          type_id="1"
          status="+"
          setter="dino"
    />
          </attachment>
      

    </bug>

</bugzilla>