<?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>84391</bug_id>
          
          <creation_ts>2012-04-19 15:34:17 -0700</creation_ts>
          <short_desc>Set m_compositingDependsOnGeometry to false if possible</short_desc>
          <delta_ts>2012-04-20 14:55:01 -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>Layout and Rendering</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>enne</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>vangelis</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>606007</commentid>
    <comment_count>0</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2012-04-19 15:34:17 -0700</bug_when>
    <thetext>RenderLayerCompositor sets the m_compositingDependsOnGeometry flag if it needs to wait until after layout is done before making compositing decisions. This is used for iframes and plugins.

m_compositingNeedsUpdate was added for fixed position, but I think plays a similar role.

Also, m_compositingDependsOnGeometry is never set to &apos;false&apos; after being set, so we end up doing expensive computeCompositingRequirements() checks every time.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>606246</commentid>
    <comment_count>1</comment_count>
      <attachid>138016</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2012-04-19 17:59:46 -0700</bug_when>
    <thetext>Created attachment 138016
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>606247</commentid>
    <comment_count>2</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2012-04-19 18:00:33 -0700</bug_when>
    <thetext>James/Vangelis: Can I trust the Chromium EWS to tell me if this broke compositing for position:fixed?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>606830</commentid>
    <comment_count>3</comment_count>
    <who name="Vangelis Kokkevis">vangelis</who>
    <bug_when>2012-04-20 12:58:35 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; James/Vangelis: Can I trust the Chromium EWS to tell me if this broke compositing for position:fixed?

I&apos;m not sure if fixed-position-composited-switch.html (the test that was added to test fixedpos compositing) tests the case where we don&apos;t quite have enough information to decide on whether to composite or not and we have to repeat after layout.  In any case, the basic functionality seems to work fine after your change so we should be ok.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>606927</commentid>
    <comment_count>4</comment_count>
      <attachid>138016</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-04-20 14:45:30 -0700</bug_when>
    <thetext>Comment on attachment 138016
Patch

Awesome! R=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>606936</commentid>
    <comment_count>5</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2012-04-20 14:55:01 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/114785</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>138016</attachid>
            <date>2012-04-19 17:59:46 -0700</date>
            <delta_ts>2012-04-20 14:45:29 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-84391-20120419175945.patch</filename>
            <type>text/plain</type>
            <size>13537</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE0NTQ4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODZkNzk0NjM2YWUxNmI2
MDE1ZWNlY2UxMGY2NDAzMWY4OGVjNDI1ZC4uMWRmNzRjNjkwMzEwMTNiMGVmOGUwYjE3YzZlZjQ4
NjY5NjdlZjQ0OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUwIEBACisyMDEyLTA0LTE5ICBTaW1v
biBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCisgICAgICAgIFNldCBtX2NvbXBv
c2l0aW5nRGVwZW5kc09uR2VvbWV0cnkgdG8gZmFsc2UgaWYgcG9zc2libGUKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg0MzkxCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisgICAgICAgIAorICAgICAgICBGb3Igc29tZSBraW5k
cyBvZiBlbGVtZW50cywgUmVuZGVyTGF5ZXJDb21wb3NpdG9yIGhhcyB0byBkZWxheSBkZWNpc2lv
bnMgYWJvdXQKKyAgICAgICAgY29tcG9zaXRpbmcgdW50aWwgdGhlIGVsZW1lbnQncyBzaXplIGFu
ZC9vciBwb3NpdGlvbiBhcmUga25vd24uIFRoaXMgd2FzIHByZXZpc291bHkKKyAgICAgICAgYmFz
ZWQgb24gdGhlIGNvbmZ1c2luZ2x5IG5hbWVkIG1fY29tcG9zaXRpbmdEZXBlbmRzT25HZW9tZXRy
eSBmbGFnLCBidXQgYW5vdGhlcgorICAgICAgICB2YXJpYW50IG9mIHRoZSBzYW1lIHRlY2huaXF1
ZSwgd2l0aCBhbiBhZGRpdGlvbmFsIGZsYWcgbV9jb21wb3NpdGluZ05lZWRzVXBkYXRlLAorICAg
ICAgICB3YXMgYWRkZWQgaW4gcjk4NjI3LgorICAgICAgICAKKyAgICAgICAgQWxzbywgb25jZSB0
aGUgbV9jb21wb3NpdGluZ0RlcGVuZHNPbkdlb21ldHJ5IGZsYWcgd2FzIHNldCB0byB0cnVlLCBu
b3RoaW5nCisgICAgICAgIHNldCBpdCB0byBmYWxzZSwgc28gZXZlcnkgY29tcG9zaXRpbmcgbGF5
ZXIgdXBkYXRlIHJlc3VsdGVkIGluIGEgY29tcHV0ZUNvbXBvc2l0aW5nUmVxdWlyZW1lbnRzKCkK
KyAgICAgICAgcGFzcyBvdmVyIHRoZSBsYXllcnMuCisgICAgICAgIAorICAgICAgICBSZW5hbWUg
dGhlIG1fY29tcG9zaXRpbmdEZXBlbmRzT25HZW9tZXRyeSBmbGFnIHRvIG1fcmVldmFsdWF0ZUNv
bXBvc2l0aW5nQWZ0ZXJMYXlvdXQsCisgICAgICAgIGFuZCBjbGVhciB0aGUgZmxhZyB3aGVuIHdl
IGRvIGEgbGF5b3V0LXJlbGF0ZWQgY29tcG9zaXRpbmcgbGF5ZXIgdXBkYXRlLgorICAgICAgICBV
c2UgdGhlIHNhbWUgZmxhZyBmb3IgcG9zaXRpb246Zml4ZWQgY29tcG9zaXRpbmcuCisgICAgICAg
IAorICAgICAgICBUaGlzIHJlcXVpcmVzIFJlbmRlckxheWVyQ29tcG9zaXRvciB0byBkaXN0aW5n
dWlzaCBiZXR3ZWVuIHN0eWxlLSBhbmQgbGF5b3V0LQorICAgICAgICByZWxhdGVkIHVwZGF0ZXMs
IHJlcXVpcmluZyBzb21lIG1pbm9yIHJlZmFjdG9yaW5nIGluIEZyYW1lVmlldy4KKworICAgICAg
ICBTaG91bGQgbm90IGNoYW5nZSBiZWhhdmlvci4KKyAgICAgICAgCisgICAgICAgICogZG9tL0Rv
Y3VtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50OjpyZWNhbGNTdHlsZSk6Cisg
ICAgICAgIChXZWJDb3JlOjpEb2N1bWVudDo6aW1wbGljaXRDbG9zZSk6CisgICAgICAgICogcGFn
ZS9GcmFtZVZpZXcuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVWaWV3Ojp1cGRhdGVDb21w
b3NpdGluZ0xheWVyc0FmdGVyU3R5bGVDaGFuZ2UpOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVW
aWV3Ojp1cGRhdGVDb21wb3NpdGluZ0xheWVyc0FmdGVyTGF5b3V0KToKKyAgICAgICAgKFdlYkNv
cmU6OkZyYW1lVmlldzo6cmVzdG9yZUJhY2tpbmdTdG9yZXMpOgorICAgICAgICAoV2ViQ29yZTo6
RnJhbWVWaWV3OjpsYXlvdXQpOgorICAgICAgICAqIHBhZ2UvRnJhbWVWaWV3Lmg6CisgICAgICAg
IChGcmFtZVZpZXcpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3Iu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpSZW5kZXJMYXll
ckNvbXBvc2l0b3IpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXJDb21wb3NpdG9yOjp1
cGRhdGVDb21wb3NpdGluZ0xheWVyc1RpbWVyRmlyZWQpOgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyTGF5ZXJDb21wb3NpdG9yOjp1cGRhdGVDb21wb3NpdGluZ0xheWVycyk6CisgICAgICAgIChX
ZWJDb3JlOjpSZW5kZXJMYXllckNvbXBvc2l0b3I6OmxheWVyVHJlZUFzVGV4dCk6CisgICAgICAg
IChXZWJDb3JlOjpSZW5kZXJMYXllckNvbXBvc2l0b3I6OnJlcXVpcmVzQ29tcG9zaXRpbmdGb3JQ
bHVnaW4pOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpyZXF1aXJl
c0NvbXBvc2l0aW5nRm9yRnJhbWUpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXJDb21w
b3NpdG9yOjpyZXF1aXJlc0NvbXBvc2l0aW5nRm9yUG9zaXRpb24pOgorICAgICAgICAqIHJlbmRl
cmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3IuaDoKKyAgICAgICAgKFJlbmRlckxheWVyQ29tcG9z
aXRvcik6CisKIDIwMTItMDQtMTggIExldmkgV2VpbnRyYXViICA8bGV2aXdAY2hyb21pdW0ub3Jn
PgogCiAgICAgICAgIEdyYXBoaWNzQ29udGV4dENHJ3Mgcm91bmRUb0RldmljZVBpeGVscyBzaG91
bGQgcm91bmQgZXZlbiB3aGVuIHRoZXJlJ3Mgbm8gdHJhbnNmb3JtCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50
LmNwcAppbmRleCBhZDg0ZTExMzdjYzYzYzdiNWJhNDIxNTY3YWY5MjFmNmJkZTYzY2MxLi4wMDBk
ZTEzN2MyYzllZDdiOWE3NWJiNDg5MWViZGU4YWM2OGM4ZGQyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVu
dC5jcHAKQEAgLTE2ODksNyArMTY4OSw3IEBAIHZvaWQgRG9jdW1lbnQ6OnJlY2FsY1N0eWxlKFN0
eWxlQ2hhbmdlIGNoYW5nZSkKICAgICAgICAgYm9vbCBsYXlvdXRQZW5kaW5nID0gdmlldygpLT5s
YXlvdXRQZW5kaW5nKCkgfHwgcmVuZGVyZXIoKS0+bmVlZHNMYXlvdXQoKTsKICAgICAgICAgLy8g
SWYgd2UgZGlkbid0IHVwZGF0ZSBjb21wb3NpdGluZyBsYXllcnMgYmVjYXVzZSBvZiBsYXlvdXQo
KSwgd2UgbmVlZCB0byBkbyBzbyBoZXJlLgogICAgICAgICBpZiAoIWxheW91dFBlbmRpbmcpCi0g
ICAgICAgICAgICB2aWV3KCktPnVwZGF0ZUNvbXBvc2l0aW5nTGF5ZXJzKCk7CisgICAgICAgICAg
ICB2aWV3KCktPnVwZGF0ZUNvbXBvc2l0aW5nTGF5ZXJzQWZ0ZXJTdHlsZUNoYW5nZSgpOwogICAg
IH0KICNlbmRpZgogCkBAIC0yNDAxLDcgKzI0MDEsNyBAQCB2b2lkIERvY3VtZW50OjppbXBsaWNp
dENsb3NlKCkKICAgICAvLyBJZiBwYWludGluZyBhbmQgY29tcG9zaXRpbmcgbGF5ZXIgdXBkYXRl
cyB3ZXJlIHN1cHByZXNzZWQgcGVuZGluZyB0aGUgbG9hZCBldmVudCwgZG8gdGhlc2UgYWN0aW9u
cyBub3cuCiAgICAgaWYgKHJlbmRlcmVyKCkgJiYgc2V0dGluZ3MoKSAmJiBzZXR0aW5ncygpLT5z
dXBwcmVzc2VzSW5jcmVtZW50YWxSZW5kZXJpbmcoKSkgewogI2lmIFVTRShBQ0NFTEVSQVRFRF9D
T01QT1NJVElORykKLSAgICAgICAgdmlldygpLT51cGRhdGVDb21wb3NpdGluZ0xheWVycygpOwor
ICAgICAgICB2aWV3KCktPnVwZGF0ZUNvbXBvc2l0aW5nTGF5ZXJzQWZ0ZXJMYXlvdXQoKTsKICNl
bmRpZgogICAgICAgICByZW5kZXJlcigpLT5yZXBhaW50KCk7CiAgICAgfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9G
cmFtZVZpZXcuY3BwCmluZGV4IDAzYWY5NGYwZWY0ZTQ3N2E3Y2U2ODA3NzdhMDdhMjFkMTU5YjY3
YWYuLjgwNDZiZTc5NzRlN2MzODc0OWU5NTU0M2U0OWM3YjRjYTY2ZTU2YzggMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL0ZyYW1lVmlldy5jcHAKQEAgLTY0MSw4ICs2NDEsMTggQEAgdm9pZCBGcmFtZVZpZXc6OmNh
bGN1bGF0ZVNjcm9sbGJhck1vZGVzRm9yTGF5b3V0KFNjcm9sbGJhck1vZGUmIGhNb2RlLCBTY3Jv
bGxiYXIKIH0KIAogI2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElORykKK3ZvaWQgRnJhbWVW
aWV3Ojp1cGRhdGVDb21wb3NpdGluZ0xheWVyc0FmdGVyU3R5bGVDaGFuZ2UoKQoreworICAgIFJl
bmRlclZpZXcqIHJvb3QgPSByb290UmVuZGVyZXIodGhpcyk7CisgICAgaWYgKCFyb290KQorICAg
ICAgICByZXR1cm47CisKKyAgICAvLyBUaGlzIGNhbGwgd2lsbCBtYWtlIHN1cmUgdGhlIGNhY2hl
ZCBoYXNBY2NlbGVyYXRlZENvbXBvc2l0aW5nIGlzIHVwZGF0ZWQgZnJvbSB0aGUgcHJlZgorICAg
IHJvb3QtPmNvbXBvc2l0b3IoKS0+Y2FjaGVBY2NlbGVyYXRlZENvbXBvc2l0aW5nRmxhZ3MoKTsK
KyAgICByb290LT5jb21wb3NpdG9yKCktPnVwZGF0ZUNvbXBvc2l0aW5nTGF5ZXJzKENvbXBvc2l0
aW5nVXBkYXRlQWZ0ZXJTdHlsZUNoYW5nZSk7Cit9CiAKLXZvaWQgRnJhbWVWaWV3Ojp1cGRhdGVD
b21wb3NpdGluZ0xheWVycygpCit2b2lkIEZyYW1lVmlldzo6dXBkYXRlQ29tcG9zaXRpbmdMYXll
cnNBZnRlckxheW91dCgpCiB7CiAgICAgUmVuZGVyVmlldyogcm9vdCA9IHJvb3RSZW5kZXJlcih0
aGlzKTsKICAgICBpZiAoIXJvb3QpCkBAIC02NTAsNyArNjYwLDcgQEAgdm9pZCBGcmFtZVZpZXc6
OnVwZGF0ZUNvbXBvc2l0aW5nTGF5ZXJzKCkKIAogICAgIC8vIFRoaXMgY2FsbCB3aWxsIG1ha2Ug
c3VyZSB0aGUgY2FjaGVkIGhhc0FjY2VsZXJhdGVkQ29tcG9zaXRpbmcgaXMgdXBkYXRlZCBmcm9t
IHRoZSBwcmVmCiAgICAgcm9vdC0+Y29tcG9zaXRvcigpLT5jYWNoZUFjY2VsZXJhdGVkQ29tcG9z
aXRpbmdGbGFncygpOwotICAgIHJvb3QtPmNvbXBvc2l0b3IoKS0+dXBkYXRlQ29tcG9zaXRpbmdM
YXllcnMoQ29tcG9zaXRpbmdVcGRhdGVBZnRlckxheW91dE9yU3R5bGVDaGFuZ2UpOworICAgIHJv
b3QtPmNvbXBvc2l0b3IoKS0+dXBkYXRlQ29tcG9zaXRpbmdMYXllcnMoQ29tcG9zaXRpbmdVcGRh
dGVBZnRlckxheW91dCk7CiB9CiAKIHZvaWQgRnJhbWVWaWV3OjpjbGVhckJhY2tpbmdTdG9yZXMo
KQpAQCAtNjczLDcgKzY4Myw3IEBAIHZvaWQgRnJhbWVWaWV3OjpyZXN0b3JlQmFja2luZ1N0b3Jl
cygpCiAKICAgICBSZW5kZXJMYXllckNvbXBvc2l0b3IqIGNvbXBvc2l0b3IgPSByb290LT5jb21w
b3NpdG9yKCk7CiAgICAgY29tcG9zaXRvci0+ZW5hYmxlQ29tcG9zaXRpbmdNb2RlKHRydWUpOwot
ICAgIGNvbXBvc2l0b3ItPnVwZGF0ZUNvbXBvc2l0aW5nTGF5ZXJzKCk7CisgICAgY29tcG9zaXRv
ci0+dXBkYXRlQ29tcG9zaXRpbmdMYXllcnMoQ29tcG9zaXRpbmdVcGRhdGVBZnRlckxheW91dCk7
CiB9CiAKIEdyYXBoaWNzTGF5ZXIqIEZyYW1lVmlldzo6bGF5ZXJGb3JIb3Jpem9udGFsU2Nyb2xs
YmFyKCkgY29uc3QKQEAgLTExMjQsNyArMTEzNCw3IEBAIHZvaWQgRnJhbWVWaWV3OjpsYXlvdXQo
Ym9vbCBhbGxvd1N1YnRyZWUpCiAgICAgZW5kRGVmZXJyZWRSZXBhaW50cygpOwogCiAjaWYgVVNF
KEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQotICAgIHVwZGF0ZUNvbXBvc2l0aW5nTGF5ZXJzKCk7
CisgICAgdXBkYXRlQ29tcG9zaXRpbmdMYXllcnNBZnRlckxheW91dCgpOwogI2VuZGlmCiAgICAg
CiAgICAgbV9sYXlvdXRDb3VudCsrOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9G
cmFtZVZpZXcuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmgKaW5kZXggYmEwMTk4
OGYzOWIzMDQ1YTVjY2M2MTYwNzBiNDllOGQzM2IxMzczMy4uNjFmYWM1NDg0ZGJjYTUxZWIxMmI1
MTU5ZmFiYmM3ZmUyMTU5ODNiYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFt
ZVZpZXcuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5oCkBAIC0xMTYsNyAr
MTE2LDggQEAgcHVibGljOgogI2VuZGlmCiAKICNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJ
TkcpCi0gICAgdm9pZCB1cGRhdGVDb21wb3NpdGluZ0xheWVycygpOworICAgIHZvaWQgdXBkYXRl
Q29tcG9zaXRpbmdMYXllcnNBZnRlclN0eWxlQ2hhbmdlKCk7CisgICAgdm9pZCB1cGRhdGVDb21w
b3NpdGluZ0xheWVyc0FmdGVyTGF5b3V0KCk7CiAgICAgYm9vbCBzeW5jQ29tcG9zaXRpbmdTdGF0
ZUZvclRoaXNGcmFtZShGcmFtZSogcm9vdEZyYW1lRm9yU3luYyk7CiAKICAgICB2b2lkIGNsZWFy
QmFja2luZ1N0b3JlcygpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlckxheWVyQ29tcG9zaXRvci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
TGF5ZXJDb21wb3NpdG9yLmNwcAppbmRleCA1MmQzNjE2MDdkZjMyOTZkNWQ3YmMyNmM5OGFkNGUx
ODQ1MmJkMmQ4Li5iMzAyNWFiMDYwYzJmY2YzYjAyODQ5ODZiNDMwYjkyZTUxOWZhNWNhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNw
cApAQCAtMTU1LDggKzE1NSw3IEBAIFJlbmRlckxheWVyQ29tcG9zaXRvcjo6UmVuZGVyTGF5ZXJD
b21wb3NpdG9yKFJlbmRlclZpZXcqIHJlbmRlclZpZXcpCiAgICAgLCBtX3Nob3dSZXBhaW50Q291
bnRlcihmYWxzZSkKICAgICAsIG1fYWNjZWxlcmF0ZWREcmF3aW5nRW5hYmxlZChmYWxzZSkKICAg
ICAsIG1fY29tcG9zaXRpbmdDb25zdWx0c092ZXJsYXAodHJ1ZSkKLSAgICAsIG1fY29tcG9zaXRp
bmdEZXBlbmRzT25HZW9tZXRyeShmYWxzZSkKLSAgICAsIG1fY29tcG9zaXRpbmdOZWVkc1VwZGF0
ZShmYWxzZSkKKyAgICAsIG1fcmVldmFsdWF0ZUNvbXBvc2l0aW5nQWZ0ZXJMYXlvdXQoZmFsc2Up
CiAgICAgLCBtX2NvbXBvc2l0aW5nKGZhbHNlKQogICAgICwgbV9jb21wb3NpdGluZ0xheWVyc05l
ZWRSZWJ1aWxkKGZhbHNlKQogICAgICwgbV9mbHVzaGluZ0xheWVycyhmYWxzZSkKQEAgLTMwMSw3
ICszMDAsNyBAQCB2b2lkIFJlbmRlckxheWVyQ29tcG9zaXRvcjo6c2NoZWR1bGVDb21wb3NpdGlu
Z0xheWVyVXBkYXRlKCkKIAogdm9pZCBSZW5kZXJMYXllckNvbXBvc2l0b3I6OnVwZGF0ZUNvbXBv
c2l0aW5nTGF5ZXJzVGltZXJGaXJlZChUaW1lcjxSZW5kZXJMYXllckNvbXBvc2l0b3I+KikKIHsK
LSAgICB1cGRhdGVDb21wb3NpdGluZ0xheWVycygpOworICAgIHVwZGF0ZUNvbXBvc2l0aW5nTGF5
ZXJzKENvbXBvc2l0aW5nVXBkYXRlQWZ0ZXJMYXlvdXQpOwogfQogCiBib29sIFJlbmRlckxheWVy
Q29tcG9zaXRvcjo6aGFzQW55QWRkaXRpb25hbENvbXBvc2l0ZWRMYXllcnMoY29uc3QgUmVuZGVy
TGF5ZXIqIHJvb3RMYXllcikgY29uc3QKQEAgLTMyMCwxNCArMzE5LDE1IEBAIHZvaWQgUmVuZGVy
TGF5ZXJDb21wb3NpdG9yOjp1cGRhdGVDb21wb3NpdGluZ0xheWVycyhDb21wb3NpdGluZ1VwZGF0
ZVR5cGUgdXBkYXRlCiAgICAgaWYgKG1fZm9yY2VDb21wb3NpdGluZ01vZGUgJiYgIW1fY29tcG9z
aXRpbmcpCiAgICAgICAgIGVuYWJsZUNvbXBvc2l0aW5nTW9kZSh0cnVlKTsKIAotICAgIGlmICgh
bV9jb21wb3NpdGluZ0RlcGVuZHNPbkdlb21ldHJ5ICYmICFtX2NvbXBvc2l0aW5nICYmICFtX2Nv
bXBvc2l0aW5nTmVlZHNVcGRhdGUpCisgICAgaWYgKCFtX3JlZXZhbHVhdGVDb21wb3NpdGluZ0Fm
dGVyTGF5b3V0ICYmICFtX2NvbXBvc2l0aW5nKQogICAgICAgICByZXR1cm47CiAKLSAgICBib29s
IGNoZWNrRm9ySGllcmFyY2h5VXBkYXRlID0gbV9jb21wb3NpdGluZ0RlcGVuZHNPbkdlb21ldHJ5
OworICAgIGJvb2wgY2hlY2tGb3JIaWVyYXJjaHlVcGRhdGUgPSBtX3JlZXZhbHVhdGVDb21wb3Np
dGluZ0FmdGVyTGF5b3V0OwogICAgIGJvb2wgbmVlZEdlb21ldHJ5VXBkYXRlID0gZmFsc2U7CiAK
ICAgICBzd2l0Y2ggKHVwZGF0ZVR5cGUpIHsKLSAgICBjYXNlIENvbXBvc2l0aW5nVXBkYXRlQWZ0
ZXJMYXlvdXRPclN0eWxlQ2hhbmdlOgorICAgIGNhc2UgQ29tcG9zaXRpbmdVcGRhdGVBZnRlclN0
eWxlQ2hhbmdlOgorICAgIGNhc2UgQ29tcG9zaXRpbmdVcGRhdGVBZnRlckxheW91dDoKICAgICBj
YXNlIENvbXBvc2l0aW5nVXBkYXRlT25IaXRUZXN0OgogICAgICAgICBjaGVja0ZvckhpZXJhcmNo
eVVwZGF0ZSA9IHRydWU7CiAgICAgICAgIGJyZWFrOwpAQCAtMzQzLDEyICszNDMsMTYgQEAgdm9p
ZCBSZW5kZXJMYXllckNvbXBvc2l0b3I6OnVwZGF0ZUNvbXBvc2l0aW5nTGF5ZXJzKENvbXBvc2l0
aW5nVXBkYXRlVHlwZSB1cGRhdGUKICAgICAgICAgcmV0dXJuOwogCiAgICAgYm9vbCBuZWVkSGll
cmFyY2h5VXBkYXRlID0gbV9jb21wb3NpdGluZ0xheWVyc05lZWRSZWJ1aWxkOworICAgIGJvb2wg
aXNGdWxsVXBkYXRlID0gIXVwZGF0ZVJvb3Q7CiAgICAgaWYgKCF1cGRhdGVSb290IHx8IG1fY29t
cG9zaXRpbmdDb25zdWx0c092ZXJsYXApIHsKICAgICAgICAgLy8gT25seSBjbGVhciB0aGUgZmxh
ZyBpZiB3ZSdyZSB1cGRhdGluZyB0aGUgZW50aXJlIGhpZXJhcmNoeS4KICAgICAgICAgbV9jb21w
b3NpdGluZ0xheWVyc05lZWRSZWJ1aWxkID0gZmFsc2U7CiAgICAgICAgIHVwZGF0ZVJvb3QgPSBy
b290UmVuZGVyTGF5ZXIoKTsKICAgICB9CiAKKyAgICBpZiAoaXNGdWxsVXBkYXRlICYmIHVwZGF0
ZVR5cGUgPT0gQ29tcG9zaXRpbmdVcGRhdGVBZnRlckxheW91dCkKKyAgICAgICAgbV9yZWV2YWx1
YXRlQ29tcG9zaXRpbmdBZnRlckxheW91dCA9IGZhbHNlOworCiAjaWYgUFJPRklMRV9MQVlFUl9S
RUJVSUxECiAgICAgKyttX3Jvb3RMYXllclVwZGF0ZUNvdW50OwogICAgIApAQCAtMzc1LDcgKzM3
OSw3IEBAIHZvaWQgUmVuZGVyTGF5ZXJDb21wb3NpdG9yOjp1cGRhdGVDb21wb3NpdGluZ0xheWVy
cyhDb21wb3NpdGluZ1VwZGF0ZVR5cGUgdXBkYXRlCiAgICAgICAgIHJlYnVpbGRDb21wb3NpdGlu
Z0xheWVyVHJlZSh1cGRhdGVSb290LCBjaGlsZExpc3QpOwogCiAgICAgICAgIC8vIEhvc3QgdGhl
IGRvY3VtZW50IGxheWVyIGluIHRoZSBSZW5kZXJWaWV3J3Mgcm9vdCBsYXllci4KLSAgICAgICAg
aWYgKHVwZGF0ZVJvb3QgPT0gcm9vdFJlbmRlckxheWVyKCkpIHsKKyAgICAgICAgaWYgKGlzRnVs
bFVwZGF0ZSkgewogICAgICAgICAgICAgLy8gRXZlbiB3aGVuIGNoaWxkTGlzdCBpcyBlbXB0eSwg
ZG9uJ3QgZHJvcCBvdXQgb2YgY29tcG9zaXRpbmcgbW9kZSBpZiB0aGVyZSBhcmUKICAgICAgICAg
ICAgIC8vIGNvbXBvc2l0ZWQgbGF5ZXJzIHRoYXQgd2UgZGlkbid0IGhpdCBpbiBvdXIgdHJhdmVy
c2FsIChlLmcuIGJlY2F1c2Ugb2YgdmlzaWJpbGl0eTpoaWRkZW4pLgogICAgICAgICAgICAgaWYg
KGNoaWxkTGlzdC5pc0VtcHR5KCkgJiYgIWhhc0FueUFkZGl0aW9uYWxDb21wb3NpdGVkTGF5ZXJz
KHVwZGF0ZVJvb3QpKQpAQCAtMzkxLDcgKzM5NSw3IEBAIHZvaWQgUmVuZGVyTGF5ZXJDb21wb3Np
dG9yOjp1cGRhdGVDb21wb3NpdGluZ0xheWVycyhDb21wb3NpdGluZ1VwZGF0ZVR5cGUgdXBkYXRl
CiAgICAgCiAjaWYgUFJPRklMRV9MQVlFUl9SRUJVSUxECiAgICAgZG91YmxlIGVuZFRpbWUgPSBX
VEY6OmN1cnJlbnRUaW1lKCk7Ci0gICAgaWYgKHVwZGF0ZVJvb3QgPT0gcm9vdFJlbmRlckxheWVy
KCkpCisgICAgaWYgKGlzRnVsbFVwZGF0ZSkKICAgICAgICAgZnByaW50ZihzdGRlcnIsICJVcGRh
dGUgJWQ6IGNvbXB1dGVDb21wb3NpdGluZ1JlcXVpcmVtZW50cyBmb3IgdGhlIHdvcmxkIHRvb2sg
JWZtc1xuIiwKICAgICAgICAgICAgICAgICAgICAgbV9yb290TGF5ZXJVcGRhdGVDb3VudCwgMTAw
MC4wICogKGVuZFRpbWUgLSBzdGFydFRpbWUpKTsKICNlbmRpZgpAQCAtMzk5LDggKzQwMyw2IEBA
IHZvaWQgUmVuZGVyTGF5ZXJDb21wb3NpdG9yOjp1cGRhdGVDb21wb3NpdGluZ0xheWVycyhDb21w
b3NpdGluZ1VwZGF0ZVR5cGUgdXBkYXRlCiAKICAgICBpZiAoIWhhc0FjY2VsZXJhdGVkQ29tcG9z
aXRpbmcoKSkKICAgICAgICAgZW5hYmxlQ29tcG9zaXRpbmdNb2RlKGZhbHNlKTsKLQotICAgIG1f
Y29tcG9zaXRpbmdOZWVkc1VwZGF0ZSA9IGZhbHNlOwogfQogCiBib29sIFJlbmRlckxheWVyQ29t
cG9zaXRvcjo6dXBkYXRlQmFja2luZyhSZW5kZXJMYXllciogbGF5ZXIsIENvbXBvc2l0aW5nQ2hh
bmdlUmVwYWludCBzaG91bGRSZXBhaW50KQpAQCAtOTc3LDcgKzk3OSw3IEBAIHZvaWQgUmVuZGVy
TGF5ZXJDb21wb3NpdG9yOjpmcmFtZVZpZXdEaWRTY3JvbGwoKQogCiBTdHJpbmcgUmVuZGVyTGF5
ZXJDb21wb3NpdG9yOjpsYXllclRyZWVBc1RleHQoYm9vbCBzaG93RGVidWdJbmZvKQogewotICAg
IHVwZGF0ZUNvbXBvc2l0aW5nTGF5ZXJzKCk7CisgICAgdXBkYXRlQ29tcG9zaXRpbmdMYXllcnMo
Q29tcG9zaXRpbmdVcGRhdGVBZnRlckxheW91dCk7CiAKICAgICBpZiAoIW1fcm9vdENvbnRlbnRM
YXllcikKICAgICAgICAgcmV0dXJuIFN0cmluZygpOwpAQCAtMTQ4MCw3ICsxNDgyLDcgQEAgYm9v
bCBSZW5kZXJMYXllckNvbXBvc2l0b3I6OnJlcXVpcmVzQ29tcG9zaXRpbmdGb3JQbHVnaW4oUmVu
ZGVyT2JqZWN0KiByZW5kZXJlcikKICAgICBpZiAoIWNvbXBvc2l0ZSkKICAgICAgICAgcmV0dXJu
IGZhbHNlOwogCi0gICAgbV9jb21wb3NpdGluZ0RlcGVuZHNPbkdlb21ldHJ5ID0gdHJ1ZTsKKyAg
ICBtX3JlZXZhbHVhdGVDb21wb3NpdGluZ0FmdGVyTGF5b3V0ID0gdHJ1ZTsKICAgICAKICAgICBS
ZW5kZXJXaWRnZXQqIHBsdWdpblJlbmRlcmVyID0gdG9SZW5kZXJXaWRnZXQocmVuZGVyZXIpOwog
ICAgIC8vIElmIHdlIGNhbid0IHJlbGlhYmx5IGtub3cgdGhlIHNpemUgb2YgdGhlIHBsdWdpbiB5
ZXQsIGRvbid0IGNoYW5nZSBjb21wb3NpdGluZyBzdGF0ZS4KQEAgLTE1MDIsNyArMTUwNCw3IEBA
IGJvb2wgUmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpyZXF1aXJlc0NvbXBvc2l0aW5nRm9yRnJhbWUo
UmVuZGVyT2JqZWN0KiByZW5kZXJlcikKICAgICBpZiAoIWZyYW1lUmVuZGVyZXItPnJlcXVpcmVz
QWNjZWxlcmF0ZWRDb21wb3NpdGluZygpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKLSAgICBt
X2NvbXBvc2l0aW5nRGVwZW5kc09uR2VvbWV0cnkgPSB0cnVlOworICAgIG1fcmVldmFsdWF0ZUNv
bXBvc2l0aW5nQWZ0ZXJMYXlvdXQgPSB0cnVlOwogCiAgICAgUmVuZGVyTGF5ZXJDb21wb3NpdG9y
KiBpbm5lckNvbXBvc2l0b3IgPSBmcmFtZUNvbnRlbnRzQ29tcG9zaXRvcihmcmFtZVJlbmRlcmVy
KTsKICAgICBpZiAoIWlubmVyQ29tcG9zaXRvciB8fCAhaW5uZXJDb21wb3NpdG9yLT5zaG91bGRQ
cm9wYWdhdGVDb21wb3NpdGluZ1RvRW5jbG9zaW5nRnJhbWUoKSkKQEAgLTE1NjgsNyArMTU3MCw3
IEBAIGJvb2wgUmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpyZXF1aXJlc0NvbXBvc2l0aW5nRm9yUG9z
aXRpb24oUmVuZGVyT2JqZWN0KiByZW5kZXJlCiAgICAgUmVuZGVyT2JqZWN0KiBjb250YWluZXIg
PSByZW5kZXJlci0+Y29udGFpbmVyKCk7CiAgICAgLy8gSWYgdGhlIHJlbmRlcmVyIGlzIG5vdCBo
b29rZWQgdXAgeWV0IHRoZW4gd2UgaGF2ZSB0byB3YWl0IHVudGlsIGl0IGlzLgogICAgIGlmICgh
Y29udGFpbmVyKSB7Ci0gICAgICAgIG1fY29tcG9zaXRpbmdOZWVkc1VwZGF0ZSA9IHRydWU7Cisg
ICAgICAgIG1fcmVldmFsdWF0ZUNvbXBvc2l0aW5nQWZ0ZXJMYXlvdXQgPSB0cnVlOwogICAgICAg
ICByZXR1cm4gZmFsc2U7CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyTGF5ZXJDb21wb3NpdG9yLmgKaW5kZXggY2IyMDdmMGM3NzM1YjFlNWQ3OTFlMjY3NDk3
MmExMTA2ZTE5ZTQ5ZC4uNzMzNGM5NmM0NWIzYmM4MzU1NzExZGEzYjU3Mzg5ODAzOGQ1OTIyZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQ29tcG9zaXRv
ci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckNvbXBvc2l0b3Iu
aApAQCAtNDMsNyArNDMsOCBAQCBjbGFzcyBSZW5kZXJWaWRlbzsKICNlbmRpZgogCiBlbnVtIENv
bXBvc2l0aW5nVXBkYXRlVHlwZSB7Ci0gICAgQ29tcG9zaXRpbmdVcGRhdGVBZnRlckxheW91dE9y
U3R5bGVDaGFuZ2UsCisgICAgQ29tcG9zaXRpbmdVcGRhdGVBZnRlclN0eWxlQ2hhbmdlLAorICAg
IENvbXBvc2l0aW5nVXBkYXRlQWZ0ZXJMYXlvdXQsCiAgICAgQ29tcG9zaXRpbmdVcGRhdGVPbkhp
dFRlc3QsCiAgICAgQ29tcG9zaXRpbmdVcGRhdGVPblNjcm9sbAogfTsKQEAgLTEwMCw3ICsxMDEs
NyBAQCBwdWJsaWM6CiAgICAgdm9pZCBkaWRGbHVzaENoYW5nZXNGb3JMYXllcihSZW5kZXJMYXll
ciopOwogICAgIAogICAgIC8vIFJlYnVpbGQgdGhlIHRyZWUgb2YgY29tcG9zaXRpbmcgbGF5ZXJz
Ci0gICAgdm9pZCB1cGRhdGVDb21wb3NpdGluZ0xheWVycyhDb21wb3NpdGluZ1VwZGF0ZVR5cGUg
PSBDb21wb3NpdGluZ1VwZGF0ZUFmdGVyTGF5b3V0T3JTdHlsZUNoYW5nZSwgUmVuZGVyTGF5ZXIq
IHVwZGF0ZVJvb3QgPSAwKTsKKyAgICB2b2lkIHVwZGF0ZUNvbXBvc2l0aW5nTGF5ZXJzKENvbXBv
c2l0aW5nVXBkYXRlVHlwZSwgUmVuZGVyTGF5ZXIqIHVwZGF0ZVJvb3QgPSAwKTsKICAgICAvLyBU
aGlzIGlzIG9ubHkgdXNlZCB3aGVuIHN0YXRlIGNoYW5nZXMgYW5kIHdlIGRvIG5vdCBleGVwZWN0
IGEgc3R5bGUgdXBkYXRlIG9yIGxheW91dCB0byBoYXBwZW4gc29vbiAoZS5nLiB3aGVuCiAgICAg
Ly8gd2UgZGlzY292ZXIgdGhhdCBhbiBpZnJhbWUgaXMgb3ZlcmxhcHBlZCBkdXJpbmcgcGFpbnRp
bmcpLgogICAgIHZvaWQgc2NoZWR1bGVDb21wb3NpdGluZ0xheWVyVXBkYXRlKCk7CkBAIC0zMTcs
MTAgKzMxOCw3IEBAIHByaXZhdGU6CiAKICAgICAvLyBXaGVuIHRydWUsIHdlIGhhdmUgdG8gd2Fp
dCB1bnRpbCBsYXlvdXQgaGFzIGhhcHBlbmVkIGJlZm9yZSB3ZSBjYW4gZGVjaWRlIHdoZXRoZXIg
dG8gZW50ZXIgY29tcG9zaXRpbmcgbW9kZSwKICAgICAvLyBiZWNhdXNlIG9ubHkgdGhlbiBkbyB3
ZSBrbm93IHRoZSBmaW5hbCBzaXplIG9mIHBsdWdpbnMgYW5kIGlmcmFtZXMuCi0gICAgLy8gRklY
TUU6IG9uY2Ugc2V0LCB0aGlzIGlzIG5ldmVyIGNsZWFyZWQuCi0gICAgbXV0YWJsZSBib29sIG1f
Y29tcG9zaXRpbmdEZXBlbmRzT25HZW9tZXRyeTsKLQotICAgIG11dGFibGUgYm9vbCBtX2NvbXBv
c2l0aW5nTmVlZHNVcGRhdGU7CisgICAgbXV0YWJsZSBib29sIG1fcmVldmFsdWF0ZUNvbXBvc2l0
aW5nQWZ0ZXJMYXlvdXQ7CiAKICAgICBib29sIG1fY29tcG9zaXRpbmc7CiAgICAgYm9vbCBtX2Nv
bXBvc2l0aW5nTGF5ZXJzTmVlZFJlYnVpbGQ7Cg==
</data>
<flag name="review"
          id="143254"
          type_id="1"
          status="+"
          setter="jamesr"
    />
          </attachment>
      

    </bug>

</bugzilla>