<?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>36365</bug_id>
          
          <creation_ts>2010-03-19 07:08:56 -0700</creation_ts>
          <short_desc>[Qt] [Performance] GraphicsLayer: constructing the layers takes too long</short_desc>
          <delta_ts>2010-04-26 03:24:04 -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>PC</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>http://script.aculo.us/stuff/sl150110/ui/</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Qt</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>35784</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Noam Rosenthal">noam</reporter>
          <assigned_to name="Noam Rosenthal">noam</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>hausmann</cc>
    
    <cc>kim.1.gronholm</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>201843</commentid>
    <comment_count>0</comment_count>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2010-03-19 07:08:56 -0700</bug_when>
    <thetext>There&apos;s a wait of ~350ms on some machines between clicking on the animation and until it starts.
That seems to be related to overhead created when constructing the GraphicsLayer scene.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>215457</commentid>
    <comment_count>1</comment_count>
      <attachid>53981</attachid>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2010-04-21 13:10:51 -0700</bug_when>
    <thetext>Created attachment 53981
make GraphicsLayerQt manage the cache itself instead of using QGraphicsItem::cache</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>215523</commentid>
    <comment_count>2</comment_count>
      <attachid>53995</attachid>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2010-04-21 15:00:53 -0700</bug_when>
    <thetext>Created attachment 53995
Fixed a problem in the first patch. Tested with all relevant LayoutTests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>215533</commentid>
    <comment_count>3</comment_count>
      <attachid>53996</attachid>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2010-04-21 15:15:04 -0700</bug_when>
    <thetext>Created attachment 53996
style/comments</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>216577</commentid>
    <comment_count>4</comment_count>
      <attachid>53996</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-04-23 15:02:26 -0700</bug_when>
    <thetext>Comment on attachment 53996
style/comments

Clearing flags on attachment: 53996

Committed r58190: &lt;http://trac.webkit.org/changeset/58190&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>216578</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-04-23 15:02:31 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>216962</commentid>
    <comment_count>6</comment_count>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2010-04-26 03:23:55 -0700</bug_when>
    <thetext>Revision r58190 cherry-picked into qtwebkit-2.0 with commit 991f4f6002271f4f98cf6a9057184bf3954a1d0c</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>53981</attachid>
            <date>2010-04-21 13:10:51 -0700</date>
            <delta_ts>2010-04-21 15:00:53 -0700</delta_ts>
            <desc>make GraphicsLayerQt manage the cache itself instead of using QGraphicsItem::cache</desc>
            <filename>patch-36365-1.diff</filename>
            <type>text/plain</type>
            <size>7706</size>
            <attacher name="Noam Rosenthal">noam</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
Y2I4ZWI1ZS4uNjU4MWY1NCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNiBAQAorMjAxMC0wNC0yMSAgTm8nYW0gUm9zZW50
aGFsICA8bm9hbS5yb3NlbnRoYWxAbm9raWEuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIFtRdF0gW1BlcmZvcm1hbmNlXSBHcmFwaGljc0xheWVy
OiBjb25zdHJ1Y3RpbmcgdGhlIGxheWVycyB0YWtlcyB0b28gbG9uZworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzYzNjUKKworICAgICAgICBUaGUgaXNz
dWUgY2FtZSBmcm9tIHVzaW5nIFFHcmFwaGljc1ZpZXcncyBjYWNoZSBhcyBpcy4gVGhlIHByb2Js
ZW0gaXMgdGhhdAorICAgICAgICBzZXZlcmFsIGNvZGUtcGF0aHMgcmVxdWlyZSByZS1yZW5kZXJp
bmcgb2YgdGhlIGl0ZW0sIGJ1dCBub3QgcmUtcmVuZGVyaW5nCisgICAgICAgIG9mIHRoZSB3ZWIg
Y29udGVudCBpbnRvIHRoZSBjYWNoZS4KKworICAgICAgICBUaGUgd2F5IHRvIHNvbHZlIGl0IGlz
IGJ5IGhhdmluZyBHcmFwaGljc0xheWVyUXQgbWFuYWdlIHRoZSBjYWNoZSBkaXJlY3RseQorICAg
ICAgICB2aWEgUVBpeG1hcENhY2hlLCBpbnN0ZWFkIG9mIHVzaW5nIFFHcmFwaGljc0l0ZW0gY2Fj
aGUgbW9kZXMuCisKKyAgICAgICAgRlBTIG1lYXN1cmVtZW50IHNob3dzIHNpZ25pZmljYW50IGlt
cHJvdmVtZW50ICgyMEZQUyBiZWZvcmUsIDQwRlBTIGFmdGVyKQorICAgICAgICBvbiBzZXZlcmFs
IHVzZS1jYXNlcywgaW5jbHVkaW5nIGJsb2ctZmlsZXMvbGVhdmVzIG9uIGEgZGVza3RvcCBlbnZp
cm9ubWVudC4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL3F0L0dyYXBoaWNzTGF5ZXJR
dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0xheWVyUXRJbXBsOjpHcmFwaGljc0xh
eWVyUXRJbXBsKToKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXJRdEltcGw6OnJlY2Fj
aGUpOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NMYXllclF0SW1wbDo6cGFpbnQpOgorICAg
ICAgICAoV2ViQ29yZTo6R3JhcGhpY3NMYXllclF0SW1wbDo6Zmx1c2hDaGFuZ2VzKToKKwogMjAx
MC0wNC0yMSAgWGFuIExvcGV6ICA8eGxvcGV6QGlnYWxpYS5jb20+CiAKICAgICAgICAgVHJ5IHRv
IGZpeCBjb21waWxhdGlvbiBvbiBHVEsrIGRlYnVnIGJvdHMuCmRpZmYgLS1naXQgYS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL3F0L0dyYXBoaWNzTGF5ZXJRdC5jcHAgYi9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL3F0L0dyYXBoaWNzTGF5ZXJRdC5jcHAKaW5kZXggODM0Y2Q0Zi4uNTE5N2M4
OCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9xdC9HcmFwaGljc0xheWVy
UXQuY3BwCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvcXQvR3JhcGhpY3NMYXllclF0
LmNwcApAQCAtNDEsNiArNDEsNyBAQAogI2luY2x1ZGUgPFF0R3VpL3FwYWludGVyLmg+CiAjaW5j
bHVkZSA8UXRHdWkvcXBhbGV0dGUuaD4KICNpbmNsdWRlIDxRdEd1aS9xcGl4bWFwLmg+CisjaW5j
bHVkZSA8UXRHdWkvcXBpeG1hcGNhY2hlLmg+CiAjaW5jbHVkZSA8UXRHdWkvcXN0eWxlb3B0aW9u
Lmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTE1MCw2ICsxNTEsOCBAQCBwdWJsaWM6CiAg
ICAgLy8gbGV0IHRoZSBjb21wb3NpdG9yLUFQSSB0ZWxsIHVzIHdoaWNoIHByb3BlcnRpZXMgd2Vy
ZSBjaGFuZ2VkCiAgICAgdm9pZCBub3RpZnlDaGFuZ2UoQ2hhbmdlTWFzayk7CiAKKyAgICBRUGl4
bWFwIHJlY2FjaGUoY29uc3QgUVJlZ2lvbiAmIHJlZ2lvbik7CisKICAgICAvLyBjYWxsZWQgd2hl
biB0aGUgY29tcG9zaXRvciBpcyByZWFkeSBmb3IgdXMgdG8gc2hvdyB0aGUgY2hhbmdlcyBvbiBz
Y3JlZW4KICAgICAvLyB0aGlzIGlzIGNhbGxlZCBpbmRpcmVjdGx5IGZyb20gQ2hyb21lQ2xpZW50
UXQ6OnNldE5lZWRzT25lU2hvdERyYXdpbmdTeW5jaHJvbml6YXRpb24KICAgICAvLyAobWVhbmlu
ZyB0aGUgc3luYyB3b3VsZCBoYXBwZW4gdG9nZXRoZXIgd2l0aCB0aGUgbmV4dCBkcmF3KQpAQCAt
MjAzLDYgKzIwNiw3IEBAIHB1YmxpYzoKICAgICBpbnQgbV9jaGFuZ2VNYXNrOwogCiAgICAgUVNp
emVGIG1fc2l6ZTsKKyAgICBRUGl4bWFwQ2FjaGU6OktleSBtX2JhY2tpbmdTdG9yZUtleTsKICNp
Zm5kZWYgUVRfTk9fQU5JTUFUSU9OCiAgICAgUUxpc3Q8UVdlYWtQb2ludGVyPFFBYnN0cmFjdEFu
aW1hdGlvbj4gPiBtX2FuaW1hdGlvbnM7CiAjZW5kaWYKQEAgLTI1NSw5ICsyNTksNiBAQCBHcmFw
aGljc0xheWVyUXRJbXBsOjpHcmFwaGljc0xheWVyUXRJbXBsKEdyYXBoaWNzTGF5ZXJRdCogbmV3
TGF5ZXIpCiAgICAgLy8gdGhleSBhcmUgaWdub3JlZCBhbmQgcGFzc2VkIHRvIHRoZSBpdGVtIGJl
bG93LgogICAgIHNldEVuYWJsZWQodHJ1ZSk7CiAKLSAgICAvLyB3ZSdsbCBzZXQgdGhlIGNhY2hl
IHdoZW4gd2Uga25vdyB3aGF0J3MgZ29pbmcgb24KLSAgICBzZXRDYWNoZU1vZGUoSXRlbUNvb3Jk
aW5hdGVDYWNoZSk7Ci0KICAgICBjb25uZWN0KHRoaXMsIFNJR05BTChub3RpZnlBbmltYXRpb25T
dGFydGVkQXN5bmMoKSksIHRoaXMsIFNMT1Qobm90aWZ5QW5pbWF0aW9uU3RhcnRlZCgpKSwgUXQ6
OlF1ZXVlZENvbm5lY3Rpb24pOwogfQogCkBAIC0yODMsNiArMjg0LDQyIEBAIEdyYXBoaWNzTGF5
ZXJRdEltcGw6On5HcmFwaGljc0xheWVyUXRJbXBsKCkKICNlbmRpZgogfQogCisKK1FQaXhtYXAg
R3JhcGhpY3NMYXllclF0SW1wbDo6cmVjYWNoZShjb25zdCBRUmVnaW9uICYgcmVnaW9uVG9VcGRh
dGUpCit7CisgICAgaWYgKCFtX2xheWVyLT5kcmF3c0NvbnRlbnQoKSkKKyAgICAgICAgcmV0dXJu
IFFQaXhtYXAoKTsKKworICAgIFFSZWdpb24gcmVnaW9uID0gcmVnaW9uVG9VcGRhdGU7CisgICAg
UVBpeG1hcCBwaXhtYXA7CisKKyAgICAvLyBXZSBtaWdodCBiZSBkcmF3aW5nIGludG8gYW4gZXhp
c3RpbmcgY2FjaGUuCisgICAgaWYgKCFRUGl4bWFwQ2FjaGU6OmZpbmQobV9iYWNraW5nU3RvcmVL
ZXksICZwaXhtYXApKQorICAgICAgICByZWdpb24gPSBRUmVnaW9uKGJvdW5kaW5nUmVjdCgpLnRv
QWxpZ25lZFJlY3QoKSk7CisKKyAgICBpZiAobV9zaXplICE9IHBpeG1hcC5zaXplKCkpIHsKKyAg
ICAgICAgcGl4bWFwID0gUVBpeG1hcChtX3NpemUudG9TaXplKCkpOworICAgICAgICBpZiAoIW1f
bGF5ZXItPmNvbnRlbnRzT3BhcXVlKCkpCisgICAgICAgICAgICBwaXhtYXAuZmlsbChRdDo6dHJh
bnNwYXJlbnQpOworICAgICAgICBtX3BlbmRpbmdDb250ZW50LnJlZ2lvblRvVXBkYXRlID0gUVJl
Z2lvbihRUmVjdChRUG9pbnQoMCwgMCksIG1fc2l6ZS50b1NpemUoKSkpOworICAgIH0KKworICAg
IFFQYWludGVyIHBhaW50ZXIoJnBpeG1hcCk7CisgICAgR3JhcGhpY3NDb250ZXh0IGdjKCZwYWlu
dGVyKTsKKyAgICBjb25zdCBpbnQgcmVjdENvdW50ID0gcmVnaW9uLnJlY3RDb3VudCgpOworICAg
IGZvciAoaW50IGkgPSAwOyBpIDwgcmVjdENvdW50OyArK2kpIHsKKyAgICAgICAgLy8gQ2xlYXIg
dGhlIGFyZWEgaW4gY2FjaGUgdGhhdCB3ZSdyZSBkcmF3aW5nIGludG8KKyAgICAgICAgcGFpbnRl
ci5zZXRDb21wb3NpdGlvbk1vZGUoUVBhaW50ZXI6OkNvbXBvc2l0aW9uTW9kZV9DbGVhcik7Cisg
ICAgICAgIHBhaW50ZXIuZmlsbFJlY3QocmVnaW9uLmJvdW5kaW5nUmVjdCgpLCBRdDo6dHJhbnNw
YXJlbnQpOworICAgICAgICAvLyBSZW5kZXIgdGhlIGFjdHVhbCBjb250ZW50cyBpbnRvIHRoZSBj
YWNoZQorICAgICAgICBwYWludGVyLnNldENvbXBvc2l0aW9uTW9kZShRUGFpbnRlcjo6Q29tcG9z
aXRpb25Nb2RlX1NvdXJjZU92ZXIpOworICAgICAgICBtX2xheWVyLT5wYWludEdyYXBoaWNzTGF5
ZXJDb250ZW50cyhnYywgcmVnaW9uLnJlY3RzKClbaV0pOworICAgIH0KKworICAgIG1fYmFja2lu
Z1N0b3JlS2V5ID0gUVBpeG1hcENhY2hlOjppbnNlcnQocGl4bWFwKTsgICAgCisgICAgcmV0dXJu
IHBpeG1hcDsKK30KKwogdm9pZCBHcmFwaGljc0xheWVyUXRJbXBsOjp1cGRhdGVUcmFuc2Zvcm0o
KQogewogICAgIHNldEJhc2VUcmFuc2Zvcm0oaXNUcmFuc2Zvcm1BbmltYXRpb25SdW5uaW5nKCkg
PyBtX2Jhc2VUcmFuc2Zvcm0gOiBtX2xheWVyLT50cmFuc2Zvcm0oKSk7CkBAIC0zNzAsOSArNDA3
LDEwIEBAIHZvaWQgR3JhcGhpY3NMYXllclF0SW1wbDo6cGFpbnQoUVBhaW50ZXIqIHBhaW50ZXIs
IGNvbnN0IFFTdHlsZU9wdGlvbkdyYXBoaWNzSXRlCiAgICAgc3dpdGNoIChtX2N1cnJlbnRDb250
ZW50LmNvbnRlbnRUeXBlKSB7CiAgICAgY2FzZSBIVE1MQ29udGVudFR5cGU6CiAgICAgICAgIGlm
IChtX3N0YXRlLmRyYXdzQ29udGVudCkgewotICAgICAgICAgICAgLy8gdGhpcyBpcyB0aGUgZXhw
ZW5zaXZlIGJpdC4gd2UgdHJ5IHRvIG1pbmltaXplIGNhbGxzIHRvIHRoaXMgYXJlYSBieSBwcm9w
ZXIgY2FjaGluZwotICAgICAgICAgICAgR3JhcGhpY3NDb250ZXh0IGdjKHBhaW50ZXIpOwotICAg
ICAgICAgICAgbV9sYXllci0+cGFpbnRHcmFwaGljc0xheWVyQ29udGVudHMoZ2MsIG9wdGlvbi0+
cmVjdCk7CisgICAgICAgICAgICBRUGl4bWFwIGJhY2tpbmdTdG9yZTsKKyAgICAgICAgICAgIGlm
ICghUVBpeG1hcENhY2hlOjpmaW5kKG1fYmFja2luZ1N0b3JlS2V5LCAmYmFja2luZ1N0b3JlKSkK
KyAgICAgICAgICAgICAgICBiYWNraW5nU3RvcmUgPSByZWNhY2hlKFFSZWdpb24oYm91bmRpbmdS
ZWN0KCkudG9BbGlnbmVkUmVjdCgpKSk7CisgICAgICAgICAgICBwYWludGVyLT5kcmF3UGl4bWFw
KDAsIDAsIGJhY2tpbmdTdG9yZSk7CiAgICAgICAgIH0KICAgICAgICAgYnJlYWs7CiAgICAgY2Fz
ZSBQaXhtYXBDb250ZW50VHlwZToKQEAgLTQ4NCwxOSArNTIyLDEzIEBAIHZvaWQgR3JhcGhpY3NM
YXllclF0SW1wbDo6Zmx1c2hDaGFuZ2VzKGJvb2wgcmVjdXJzaXZlLCBib29sIGZvcmNlVXBkYXRl
VHJhbnNmb3JtCiAgICAgICAgICAgICB1cGRhdGUoKTsKICAgICAgICAgICAgIHNldEZsYWcoSXRl
bUhhc05vQ29udGVudHMsIGZhbHNlKTsKIAotICAgICAgICAgICAgLy8gbm8gcG9pbnQgaW4gY2Fj
aGluZyBhIGRpcmVjdGx5IGNvbXBvc2l0ZWQgcGl4bWFwIGludG8gYW5vdGhlciBwaXhtYXAKLSAg
ICAgICAgICAgIHNldENhY2hlTW9kZShOb0NhY2hlKTsKLQogICAgICAgICAgICAgYnJlYWs7CiAg
ICAgICAgIGNhc2UgTWVkaWFDb250ZW50VHlwZToKICAgICAgICAgICAgIHNldEZsYWcoSXRlbUhh
c05vQ29udGVudHMsIHRydWUpOwotICAgICAgICAgICAgc2V0Q2FjaGVNb2RlKE5vQ2FjaGUpOwog
ICAgICAgICAgICAgbV9wZW5kaW5nQ29udGVudC5tZWRpYUxheWVyLmRhdGEoKS0+c2V0UGFyZW50
SXRlbSh0aGlzKTsKICAgICAgICAgICAgIGJyZWFrOwogCiAgICAgICAgIGNhc2UgQ29sb3JDb250
ZW50VHlwZToKLSAgICAgICAgICAgIC8vIG5vIHBvaW50IGluIGNhY2hpbmcgYSBzb2xpZC1jb2xv
ciByZWN0YW5nbGUKLSAgICAgICAgICAgIHNldENhY2hlTW9kZShOb0NhY2hlKTsKICAgICAgICAg
ICAgIGlmIChtX3BlbmRpbmdDb250ZW50LmNvbnRlbnRUeXBlICE9IG1fY3VycmVudENvbnRlbnQu
Y29udGVudFR5cGUgfHwgbV9wZW5kaW5nQ29udGVudC5jb250ZW50c0JhY2tncm91bmRDb2xvciAh
PSBtX2N1cnJlbnRDb250ZW50LmNvbnRlbnRzQmFja2dyb3VuZENvbG9yKQogICAgICAgICAgICAg
ICAgIHVwZGF0ZSgpOwogICAgICAgICAgICAgbV9zdGF0ZS5kcmF3c0NvbnRlbnQgPSBmYWxzZTsK
QEAgLTUwOSwxMiArNTQxLDggQEAgdm9pZCBHcmFwaGljc0xheWVyUXRJbXBsOjpmbHVzaENoYW5n
ZXMoYm9vbCByZWN1cnNpdmUsIGJvb2wgZm9yY2VVcGRhdGVUcmFuc2Zvcm0KICAgICAgICAgY2Fz
ZSBIVE1MQ29udGVudFR5cGU6CiAgICAgICAgICAgICBpZiAobV9wZW5kaW5nQ29udGVudC5jb250
ZW50VHlwZSAhPSBtX2N1cnJlbnRDb250ZW50LmNvbnRlbnRUeXBlKQogICAgICAgICAgICAgICAg
IHVwZGF0ZSgpOwotICAgICAgICAgICAgaWYgKCFtX3N0YXRlLmRyYXdzQ29udGVudCAmJiBtX2xh
eWVyLT5kcmF3c0NvbnRlbnQoKSkgeworICAgICAgICAgICAgaWYgKCFtX3N0YXRlLmRyYXdzQ29u
dGVudCAmJiBtX2xheWVyLT5kcmF3c0NvbnRlbnQoKSkKICAgICAgICAgICAgICAgICB1cGRhdGUo
KTsKLSAgICAgICAgICAgICAgICBpZiAobV9sYXllci0+ZHJhd3NDb250ZW50KCkgJiYgIW1fbWFz
a0VmZmVjdCkKLSAgICAgICAgICAgICAgICAgICAgc2V0Q2FjaGVNb2RlKEl0ZW1Db29yZGluYXRl
Q2FjaGUpOwotICAgICAgICAgICAgfSBlbHNlIGlmICghbV9sYXllci0+ZHJhd3NDb250ZW50KCkp
Ci0gICAgICAgICAgICAgICAgc2V0Q2FjaGVNb2RlKE5vQ2FjaGUpOwogCiAgICAgICAgICAgICBz
ZXRGbGFnKEl0ZW1IYXNOb0NvbnRlbnRzLCAhbV9sYXllci0+ZHJhd3NDb250ZW50KCkpOwogICAg
ICAgICAgICAgYnJlYWs7CkBAIC01NDQsOCArNTcyLDExIEBAIHZvaWQgR3JhcGhpY3NMYXllclF0
SW1wbDo6Zmx1c2hDaGFuZ2VzKGJvb2wgcmVjdXJzaXZlLCBib29sIGZvcmNlVXBkYXRlVHJhbnNm
b3JtCiAKICAgICBpZiAobV9tYXNrRWZmZWN0KQogICAgICAgICBtX21hc2tFZmZlY3QuZGF0YSgp
LT51cGRhdGUoKTsKLSAgICBlbHNlIGlmIChtX2NoYW5nZU1hc2sgJiBEaXNwbGF5Q2hhbmdlKQor
ICAgIGVsc2UgaWYgKG1fY2hhbmdlTWFzayAmIERpc3BsYXlDaGFuZ2UpIHsgICAgICAgIAorICAg
ICAgICByZWNhY2hlKG1fcGVuZGluZ0NvbnRlbnQucmVnaW9uVG9VcGRhdGUpOwogICAgICAgICB1
cGRhdGUobV9wZW5kaW5nQ29udGVudC5yZWdpb25Ub1VwZGF0ZS5ib3VuZGluZ1JlY3QoKSk7Cisg
ICAgICAgIG1fcGVuZGluZ0NvbnRlbnQucmVnaW9uVG9VcGRhdGUgPSBRUmVnaW9uKCk7CisgICAg
fQogCiAgICAgaWYgKChtX2NoYW5nZU1hc2sgJiBCYWNrZ3JvdW5kQ29sb3JDaGFuZ2UpICYmICht
X3BlbmRpbmdDb250ZW50LmJhY2tncm91bmRDb2xvciAhPSBtX2N1cnJlbnRDb250ZW50LmJhY2tn
cm91bmRDb2xvcikpCiAgICAgICAgIHVwZGF0ZSgpOwpAQCAtNTcyLDcgKzYwMyw2IEBAIHZvaWQg
R3JhcGhpY3NMYXllclF0SW1wbDo6Zmx1c2hDaGFuZ2VzKGJvb2wgcmVjdXJzaXZlLCBib29sIGZv
cmNlVXBkYXRlVHJhbnNmb3JtCiAgICAgbV9jdXJyZW50Q29udGVudC5jb250ZW50VHlwZSA9IG1f
cGVuZGluZ0NvbnRlbnQuY29udGVudFR5cGU7CiAgICAgbV9jdXJyZW50Q29udGVudC5tZWRpYUxh
eWVyID0gbV9wZW5kaW5nQ29udGVudC5tZWRpYUxheWVyOwogICAgIG1fY3VycmVudENvbnRlbnQu
YmFja2dyb3VuZENvbG9yID0gbV9wZW5kaW5nQ29udGVudC5iYWNrZ3JvdW5kQ29sb3I7Ci0gICAg
bV9jdXJyZW50Q29udGVudC5yZWdpb25Ub1VwZGF0ZSB8PSBtX3BlbmRpbmdDb250ZW50LnJlZ2lv
blRvVXBkYXRlOwogICAgIG1fY3VycmVudENvbnRlbnQuY29udGVudHNCYWNrZ3JvdW5kQ29sb3Ig
PSBtX3BlbmRpbmdDb250ZW50LmNvbnRlbnRzQmFja2dyb3VuZENvbG9yOwogICAgIG1fcGVuZGlu
Z0NvbnRlbnQucmVnaW9uVG9VcGRhdGUgPSBRUmVnaW9uKCk7CiAgICAgbV9jaGFuZ2VNYXNrID0g
Tm9DaGFuZ2VzOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>53995</attachid>
            <date>2010-04-21 15:00:53 -0700</date>
            <delta_ts>2010-04-21 15:15:04 -0700</delta_ts>
            <desc>Fixed a problem in the first patch. Tested with all relevant LayoutTests</desc>
            <filename>patch-36365-2.diff</filename>
            <type>text/plain</type>
            <size>7931</size>
            <attacher name="Noam Rosenthal">noam</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
Y2I4ZWI1ZS4uNjU4MWY1NCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNiBAQAorMjAxMC0wNC0yMSAgTm8nYW0gUm9zZW50
aGFsICA8bm9hbS5yb3NlbnRoYWxAbm9raWEuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIFtRdF0gW1BlcmZvcm1hbmNlXSBHcmFwaGljc0xheWVy
OiBjb25zdHJ1Y3RpbmcgdGhlIGxheWVycyB0YWtlcyB0b28gbG9uZworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzYzNjUKKworICAgICAgICBUaGUgaXNz
dWUgY2FtZSBmcm9tIHVzaW5nIFFHcmFwaGljc1ZpZXcncyBjYWNoZSBhcyBpcy4gVGhlIHByb2Js
ZW0gaXMgdGhhdAorICAgICAgICBzZXZlcmFsIGNvZGUtcGF0aHMgcmVxdWlyZSByZS1yZW5kZXJp
bmcgb2YgdGhlIGl0ZW0sIGJ1dCBub3QgcmUtcmVuZGVyaW5nCisgICAgICAgIG9mIHRoZSB3ZWIg
Y29udGVudCBpbnRvIHRoZSBjYWNoZS4KKworICAgICAgICBUaGUgd2F5IHRvIHNvbHZlIGl0IGlz
IGJ5IGhhdmluZyBHcmFwaGljc0xheWVyUXQgbWFuYWdlIHRoZSBjYWNoZSBkaXJlY3RseQorICAg
ICAgICB2aWEgUVBpeG1hcENhY2hlLCBpbnN0ZWFkIG9mIHVzaW5nIFFHcmFwaGljc0l0ZW0gY2Fj
aGUgbW9kZXMuCisKKyAgICAgICAgRlBTIG1lYXN1cmVtZW50IHNob3dzIHNpZ25pZmljYW50IGlt
cHJvdmVtZW50ICgyMEZQUyBiZWZvcmUsIDQwRlBTIGFmdGVyKQorICAgICAgICBvbiBzZXZlcmFs
IHVzZS1jYXNlcywgaW5jbHVkaW5nIGJsb2ctZmlsZXMvbGVhdmVzIG9uIGEgZGVza3RvcCBlbnZp
cm9ubWVudC4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL3F0L0dyYXBoaWNzTGF5ZXJR
dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0xheWVyUXRJbXBsOjpHcmFwaGljc0xh
eWVyUXRJbXBsKToKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXJRdEltcGw6OnJlY2Fj
aGUpOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NMYXllclF0SW1wbDo6cGFpbnQpOgorICAg
ICAgICAoV2ViQ29yZTo6R3JhcGhpY3NMYXllclF0SW1wbDo6Zmx1c2hDaGFuZ2VzKToKKwogMjAx
MC0wNC0yMSAgWGFuIExvcGV6ICA8eGxvcGV6QGlnYWxpYS5jb20+CiAKICAgICAgICAgVHJ5IHRv
IGZpeCBjb21waWxhdGlvbiBvbiBHVEsrIGRlYnVnIGJvdHMuCmRpZmYgLS1naXQgYS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL3F0L0dyYXBoaWNzTGF5ZXJRdC5jcHAgYi9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL3F0L0dyYXBoaWNzTGF5ZXJRdC5jcHAKaW5kZXggODM0Y2Q0Zi4uMWYzMDU3
YyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9xdC9HcmFwaGljc0xheWVy
UXQuY3BwCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvcXQvR3JhcGhpY3NMYXllclF0
LmNwcApAQCAtNDEsNiArNDEsNyBAQAogI2luY2x1ZGUgPFF0R3VpL3FwYWludGVyLmg+CiAjaW5j
bHVkZSA8UXRHdWkvcXBhbGV0dGUuaD4KICNpbmNsdWRlIDxRdEd1aS9xcGl4bWFwLmg+CisjaW5j
bHVkZSA8UXRHdWkvcXBpeG1hcGNhY2hlLmg+CiAjaW5jbHVkZSA8UXRHdWkvcXN0eWxlb3B0aW9u
Lmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTE1MCw2ICsxNTEsOSBAQCBwdWJsaWM6CiAg
ICAgLy8gbGV0IHRoZSBjb21wb3NpdG9yLUFQSSB0ZWxsIHVzIHdoaWNoIHByb3BlcnRpZXMgd2Vy
ZSBjaGFuZ2VkCiAgICAgdm9pZCBub3RpZnlDaGFuZ2UoQ2hhbmdlTWFzayk7CiAKKyAgICAvLyBh
Y3R1YWwgcmVuZGVyaW5nIG9mIHRoZSB3ZWItY29udGVudCBpbnRvIGEgUVBpeG1hcAorICAgIFFQ
aXhtYXAgcmVjYWNoZShjb25zdCBRUmVnaW9uICYgcmVnaW9uKTsKKwogICAgIC8vIGNhbGxlZCB3
aGVuIHRoZSBjb21wb3NpdG9yIGlzIHJlYWR5IGZvciB1cyB0byBzaG93IHRoZSBjaGFuZ2VzIG9u
IHNjcmVlbgogICAgIC8vIHRoaXMgaXMgY2FsbGVkIGluZGlyZWN0bHkgZnJvbSBDaHJvbWVDbGll
bnRRdDo6c2V0TmVlZHNPbmVTaG90RHJhd2luZ1N5bmNocm9uaXphdGlvbgogICAgIC8vIChtZWFu
aW5nIHRoZSBzeW5jIHdvdWxkIGhhcHBlbiB0b2dldGhlciB3aXRoIHRoZSBuZXh0IGRyYXcpCkBA
IC0yMDMsNiArMjA3LDcgQEAgcHVibGljOgogICAgIGludCBtX2NoYW5nZU1hc2s7CiAKICAgICBR
U2l6ZUYgbV9zaXplOworICAgIFFQaXhtYXBDYWNoZTo6S2V5IG1fYmFja2luZ1N0b3JlS2V5Owog
I2lmbmRlZiBRVF9OT19BTklNQVRJT04KICAgICBRTGlzdDxRV2Vha1BvaW50ZXI8UUFic3RyYWN0
QW5pbWF0aW9uPiA+IG1fYW5pbWF0aW9uczsKICNlbmRpZgpAQCAtMjU1LDkgKzI2MCw2IEBAIEdy
YXBoaWNzTGF5ZXJRdEltcGw6OkdyYXBoaWNzTGF5ZXJRdEltcGwoR3JhcGhpY3NMYXllclF0KiBu
ZXdMYXllcikKICAgICAvLyB0aGV5IGFyZSBpZ25vcmVkIGFuZCBwYXNzZWQgdG8gdGhlIGl0ZW0g
YmVsb3cuCiAgICAgc2V0RW5hYmxlZCh0cnVlKTsKIAotICAgIC8vIHdlJ2xsIHNldCB0aGUgY2Fj
aGUgd2hlbiB3ZSBrbm93IHdoYXQncyBnb2luZyBvbgotICAgIHNldENhY2hlTW9kZShJdGVtQ29v
cmRpbmF0ZUNhY2hlKTsKLQogICAgIGNvbm5lY3QodGhpcywgU0lHTkFMKG5vdGlmeUFuaW1hdGlv
blN0YXJ0ZWRBc3luYygpKSwgdGhpcywgU0xPVChub3RpZnlBbmltYXRpb25TdGFydGVkKCkpLCBR
dDo6UXVldWVkQ29ubmVjdGlvbik7CiB9CiAKQEAgLTI4Myw2ICsyODUsMzkgQEAgR3JhcGhpY3NM
YXllclF0SW1wbDo6fkdyYXBoaWNzTGF5ZXJRdEltcGwoKQogI2VuZGlmCiB9CiAKKworUVBpeG1h
cCBHcmFwaGljc0xheWVyUXRJbXBsOjpyZWNhY2hlKGNvbnN0IFFSZWdpb24gJiByZWdpb25Ub1Vw
ZGF0ZSkKK3sKKyAgICBpZiAoIW1fbGF5ZXItPmRyYXdzQ29udGVudCgpKQorICAgICAgICByZXR1
cm4gUVBpeG1hcCgpOworCisgICAgUVJlZ2lvbiByZWdpb24gPSByZWdpb25Ub1VwZGF0ZTsKKyAg
ICBRUGl4bWFwIHBpeG1hcDsKKworICAgIC8vIFdlIG1pZ2h0IGJlIGRyYXdpbmcgaW50byBhbiBl
eGlzdGluZyBjYWNoZS4KKyAgICBpZiAoIVFQaXhtYXBDYWNoZTo6ZmluZChtX2JhY2tpbmdTdG9y
ZUtleSwgJnBpeG1hcCkpCisgICAgICAgIHJlZ2lvbiA9IFFSZWdpb24oYm91bmRpbmdSZWN0KCku
dG9BbGlnbmVkUmVjdCgpKTsKKworICAgIGlmIChtX3NpemUgIT0gcGl4bWFwLnNpemUoKSkgewor
ICAgICAgICBwaXhtYXAgPSBRUGl4bWFwKG1fc2l6ZS50b1NpemUoKSk7CisgICAgICAgIGlmICgh
bV9sYXllci0+Y29udGVudHNPcGFxdWUoKSkKKyAgICAgICAgICAgIHBpeG1hcC5maWxsKFF0Ojp0
cmFuc3BhcmVudCk7CisgICAgICAgIG1fcGVuZGluZ0NvbnRlbnQucmVnaW9uVG9VcGRhdGUgPSBR
UmVnaW9uKFFSZWN0KFFQb2ludCgwLCAwKSwgbV9zaXplLnRvU2l6ZSgpKSk7CisgICAgfQorCisg
ICAgUVBhaW50ZXIgcGFpbnRlcigmcGl4bWFwKTsKKyAgICBHcmFwaGljc0NvbnRleHQgZ2MoJnBh
aW50ZXIpOworICAgIC8vIENsZWFyIHRoZSBhcmVhIGluIGNhY2hlIHRoYXQgd2UncmUgZHJhd2lu
ZyBpbnRvCisgICAgcGFpbnRlci5zZXRDb21wb3NpdGlvbk1vZGUoUVBhaW50ZXI6OkNvbXBvc2l0
aW9uTW9kZV9DbGVhcik7CisgICAgcGFpbnRlci5maWxsUmVjdChyZWdpb24uYm91bmRpbmdSZWN0
KCksIFF0Ojp0cmFuc3BhcmVudCk7CisgICAgLy8gUmVuZGVyIHRoZSBhY3R1YWwgY29udGVudHMg
aW50byB0aGUgY2FjaGUKKyAgICBwYWludGVyLnNldENvbXBvc2l0aW9uTW9kZShRUGFpbnRlcjo6
Q29tcG9zaXRpb25Nb2RlX1NvdXJjZU92ZXIpOworICAgIG1fbGF5ZXItPnBhaW50R3JhcGhpY3NM
YXllckNvbnRlbnRzKGdjLCByZWdpb24uYm91bmRpbmdSZWN0KCkpOworCisgICAgbV9iYWNraW5n
U3RvcmVLZXkgPSBRUGl4bWFwQ2FjaGU6Omluc2VydChwaXhtYXApOyAgICAKKyAgICByZXR1cm4g
cGl4bWFwOworfQorCiB2b2lkIEdyYXBoaWNzTGF5ZXJRdEltcGw6OnVwZGF0ZVRyYW5zZm9ybSgp
CiB7CiAgICAgc2V0QmFzZVRyYW5zZm9ybShpc1RyYW5zZm9ybUFuaW1hdGlvblJ1bm5pbmcoKSA/
IG1fYmFzZVRyYW5zZm9ybSA6IG1fbGF5ZXItPnRyYW5zZm9ybSgpKTsKQEAgLTM3MCw5ICs0MDUs
MTIgQEAgdm9pZCBHcmFwaGljc0xheWVyUXRJbXBsOjpwYWludChRUGFpbnRlciogcGFpbnRlciwg
Y29uc3QgUVN0eWxlT3B0aW9uR3JhcGhpY3NJdGUKICAgICBzd2l0Y2ggKG1fY3VycmVudENvbnRl
bnQuY29udGVudFR5cGUpIHsKICAgICBjYXNlIEhUTUxDb250ZW50VHlwZToKICAgICAgICAgaWYg
KG1fc3RhdGUuZHJhd3NDb250ZW50KSB7Ci0gICAgICAgICAgICAvLyB0aGlzIGlzIHRoZSBleHBl
bnNpdmUgYml0LiB3ZSB0cnkgdG8gbWluaW1pemUgY2FsbHMgdG8gdGhpcyBhcmVhIGJ5IHByb3Bl
ciBjYWNoaW5nCi0gICAgICAgICAgICBHcmFwaGljc0NvbnRleHQgZ2MocGFpbnRlcik7Ci0gICAg
ICAgICAgICBtX2xheWVyLT5wYWludEdyYXBoaWNzTGF5ZXJDb250ZW50cyhnYywgb3B0aW9uLT5y
ZWN0KTsKKyAgICAgICAgICAgIFFQaXhtYXAgYmFja2luZ1N0b3JlOworICAgICAgICAgICAgLy8g
V2UgbWlnaHQgbmVlZCB0byByZWNhY2hlLCBpbiBjYXNlIHdlIHRyeSB0byBwYWludCBhbmQgdGhl
IGNhY2hlCisgICAgICAgICAgICAvLyB3YXMgcHVyZ2VkIChlLmcuIGlmIGl0IHdhcyBmdWxsKS4K
KyAgICAgICAgICAgIGlmICghUVBpeG1hcENhY2hlOjpmaW5kKG1fYmFja2luZ1N0b3JlS2V5LCAm
YmFja2luZ1N0b3JlKSB8fCBiYWNraW5nU3RvcmUuc2l6ZSgpICE9IG1fc2l6ZS50b1NpemUoKSkK
KyAgICAgICAgICAgICAgICBiYWNraW5nU3RvcmUgPSByZWNhY2hlKFFSZWdpb24oYm91bmRpbmdS
ZWN0KCkudG9BbGlnbmVkUmVjdCgpKSk7CisgICAgICAgICAgICBwYWludGVyLT5kcmF3UGl4bWFw
KDAsIDAsIGJhY2tpbmdTdG9yZSk7CiAgICAgICAgIH0KICAgICAgICAgYnJlYWs7CiAgICAgY2Fz
ZSBQaXhtYXBDb250ZW50VHlwZToKQEAgLTQ4NCwxOSArNTIyLDEzIEBAIHZvaWQgR3JhcGhpY3NM
YXllclF0SW1wbDo6Zmx1c2hDaGFuZ2VzKGJvb2wgcmVjdXJzaXZlLCBib29sIGZvcmNlVXBkYXRl
VHJhbnNmb3JtCiAgICAgICAgICAgICB1cGRhdGUoKTsKICAgICAgICAgICAgIHNldEZsYWcoSXRl
bUhhc05vQ29udGVudHMsIGZhbHNlKTsKIAotICAgICAgICAgICAgLy8gbm8gcG9pbnQgaW4gY2Fj
aGluZyBhIGRpcmVjdGx5IGNvbXBvc2l0ZWQgcGl4bWFwIGludG8gYW5vdGhlciBwaXhtYXAKLSAg
ICAgICAgICAgIHNldENhY2hlTW9kZShOb0NhY2hlKTsKLQogICAgICAgICAgICAgYnJlYWs7CiAg
ICAgICAgIGNhc2UgTWVkaWFDb250ZW50VHlwZToKICAgICAgICAgICAgIHNldEZsYWcoSXRlbUhh
c05vQ29udGVudHMsIHRydWUpOwotICAgICAgICAgICAgc2V0Q2FjaGVNb2RlKE5vQ2FjaGUpOwog
ICAgICAgICAgICAgbV9wZW5kaW5nQ29udGVudC5tZWRpYUxheWVyLmRhdGEoKS0+c2V0UGFyZW50
SXRlbSh0aGlzKTsKICAgICAgICAgICAgIGJyZWFrOwogCiAgICAgICAgIGNhc2UgQ29sb3JDb250
ZW50VHlwZToKLSAgICAgICAgICAgIC8vIG5vIHBvaW50IGluIGNhY2hpbmcgYSBzb2xpZC1jb2xv
ciByZWN0YW5nbGUKLSAgICAgICAgICAgIHNldENhY2hlTW9kZShOb0NhY2hlKTsKICAgICAgICAg
ICAgIGlmIChtX3BlbmRpbmdDb250ZW50LmNvbnRlbnRUeXBlICE9IG1fY3VycmVudENvbnRlbnQu
Y29udGVudFR5cGUgfHwgbV9wZW5kaW5nQ29udGVudC5jb250ZW50c0JhY2tncm91bmRDb2xvciAh
PSBtX2N1cnJlbnRDb250ZW50LmNvbnRlbnRzQmFja2dyb3VuZENvbG9yKQogICAgICAgICAgICAg
ICAgIHVwZGF0ZSgpOwogICAgICAgICAgICAgbV9zdGF0ZS5kcmF3c0NvbnRlbnQgPSBmYWxzZTsK
QEAgLTUwOSwxMiArNTQxLDggQEAgdm9pZCBHcmFwaGljc0xheWVyUXRJbXBsOjpmbHVzaENoYW5n
ZXMoYm9vbCByZWN1cnNpdmUsIGJvb2wgZm9yY2VVcGRhdGVUcmFuc2Zvcm0KICAgICAgICAgY2Fz
ZSBIVE1MQ29udGVudFR5cGU6CiAgICAgICAgICAgICBpZiAobV9wZW5kaW5nQ29udGVudC5jb250
ZW50VHlwZSAhPSBtX2N1cnJlbnRDb250ZW50LmNvbnRlbnRUeXBlKQogICAgICAgICAgICAgICAg
IHVwZGF0ZSgpOwotICAgICAgICAgICAgaWYgKCFtX3N0YXRlLmRyYXdzQ29udGVudCAmJiBtX2xh
eWVyLT5kcmF3c0NvbnRlbnQoKSkgeworICAgICAgICAgICAgaWYgKCFtX3N0YXRlLmRyYXdzQ29u
dGVudCAmJiBtX2xheWVyLT5kcmF3c0NvbnRlbnQoKSkKICAgICAgICAgICAgICAgICB1cGRhdGUo
KTsKLSAgICAgICAgICAgICAgICBpZiAobV9sYXllci0+ZHJhd3NDb250ZW50KCkgJiYgIW1fbWFz
a0VmZmVjdCkKLSAgICAgICAgICAgICAgICAgICAgc2V0Q2FjaGVNb2RlKEl0ZW1Db29yZGluYXRl
Q2FjaGUpOwotICAgICAgICAgICAgfSBlbHNlIGlmICghbV9sYXllci0+ZHJhd3NDb250ZW50KCkp
Ci0gICAgICAgICAgICAgICAgc2V0Q2FjaGVNb2RlKE5vQ2FjaGUpOwogCiAgICAgICAgICAgICBz
ZXRGbGFnKEl0ZW1IYXNOb0NvbnRlbnRzLCAhbV9sYXllci0+ZHJhd3NDb250ZW50KCkpOwogICAg
ICAgICAgICAgYnJlYWs7CkBAIC01NDQsOCArNTcyLDEzIEBAIHZvaWQgR3JhcGhpY3NMYXllclF0
SW1wbDo6Zmx1c2hDaGFuZ2VzKGJvb2wgcmVjdXJzaXZlLCBib29sIGZvcmNlVXBkYXRlVHJhbnNm
b3JtCiAKICAgICBpZiAobV9tYXNrRWZmZWN0KQogICAgICAgICBtX21hc2tFZmZlY3QuZGF0YSgp
LT51cGRhdGUoKTsKLSAgICBlbHNlIGlmIChtX2NoYW5nZU1hc2sgJiBEaXNwbGF5Q2hhbmdlKQor
ICAgIGVsc2UgaWYgKG1fY2hhbmdlTWFzayAmIERpc3BsYXlDaGFuZ2UpIHsgICAgICAgIAorICAg
ICAgICAvLyBSZWNhY2hlIG5vdzogYWxsIHRoZSBjb250ZW50IGlzIHJlYWR5IGFuZCB3ZSBkb24n
dCB3YW50IHRvIHdhaXQKKyAgICAgICAgLy8gdW50aWwgdGhlIHBhaW50IGV2ZW50LgorICAgICAg
ICByZWNhY2hlKG1fcGVuZGluZ0NvbnRlbnQucmVnaW9uVG9VcGRhdGUpOwogICAgICAgICB1cGRh
dGUobV9wZW5kaW5nQ29udGVudC5yZWdpb25Ub1VwZGF0ZS5ib3VuZGluZ1JlY3QoKSk7CisgICAg
ICAgIG1fcGVuZGluZ0NvbnRlbnQucmVnaW9uVG9VcGRhdGUgPSBRUmVnaW9uKCk7CisgICAgfQog
CiAgICAgaWYgKChtX2NoYW5nZU1hc2sgJiBCYWNrZ3JvdW5kQ29sb3JDaGFuZ2UpICYmIChtX3Bl
bmRpbmdDb250ZW50LmJhY2tncm91bmRDb2xvciAhPSBtX2N1cnJlbnRDb250ZW50LmJhY2tncm91
bmRDb2xvcikpCiAgICAgICAgIHVwZGF0ZSgpOwpAQCAtNTcyLDcgKzYwNSw2IEBAIHZvaWQgR3Jh
cGhpY3NMYXllclF0SW1wbDo6Zmx1c2hDaGFuZ2VzKGJvb2wgcmVjdXJzaXZlLCBib29sIGZvcmNl
VXBkYXRlVHJhbnNmb3JtCiAgICAgbV9jdXJyZW50Q29udGVudC5jb250ZW50VHlwZSA9IG1fcGVu
ZGluZ0NvbnRlbnQuY29udGVudFR5cGU7CiAgICAgbV9jdXJyZW50Q29udGVudC5tZWRpYUxheWVy
ID0gbV9wZW5kaW5nQ29udGVudC5tZWRpYUxheWVyOwogICAgIG1fY3VycmVudENvbnRlbnQuYmFj
a2dyb3VuZENvbG9yID0gbV9wZW5kaW5nQ29udGVudC5iYWNrZ3JvdW5kQ29sb3I7Ci0gICAgbV9j
dXJyZW50Q29udGVudC5yZWdpb25Ub1VwZGF0ZSB8PSBtX3BlbmRpbmdDb250ZW50LnJlZ2lvblRv
VXBkYXRlOwogICAgIG1fY3VycmVudENvbnRlbnQuY29udGVudHNCYWNrZ3JvdW5kQ29sb3IgPSBt
X3BlbmRpbmdDb250ZW50LmNvbnRlbnRzQmFja2dyb3VuZENvbG9yOwogICAgIG1fcGVuZGluZ0Nv
bnRlbnQucmVnaW9uVG9VcGRhdGUgPSBRUmVnaW9uKCk7CiAgICAgbV9jaGFuZ2VNYXNrID0gTm9D
aGFuZ2VzOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>53996</attachid>
            <date>2010-04-21 15:15:04 -0700</date>
            <delta_ts>2010-04-23 15:02:26 -0700</delta_ts>
            <desc>style/comments</desc>
            <filename>patch-36365-3.diff</filename>
            <type>text/plain</type>
            <size>8272</size>
            <attacher name="Noam Rosenthal">noam</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
Y2I4ZWI1ZS4uNjU4MWY1NCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNiBAQAorMjAxMC0wNC0yMSAgTm8nYW0gUm9zZW50
aGFsICA8bm9hbS5yb3NlbnRoYWxAbm9raWEuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIFtRdF0gW1BlcmZvcm1hbmNlXSBHcmFwaGljc0xheWVy
OiBjb25zdHJ1Y3RpbmcgdGhlIGxheWVycyB0YWtlcyB0b28gbG9uZworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzYzNjUKKworICAgICAgICBUaGUgaXNz
dWUgY2FtZSBmcm9tIHVzaW5nIFFHcmFwaGljc1ZpZXcncyBjYWNoZSBhcyBpcy4gVGhlIHByb2Js
ZW0gaXMgdGhhdAorICAgICAgICBzZXZlcmFsIGNvZGUtcGF0aHMgcmVxdWlyZSByZS1yZW5kZXJp
bmcgb2YgdGhlIGl0ZW0sIGJ1dCBub3QgcmUtcmVuZGVyaW5nCisgICAgICAgIG9mIHRoZSB3ZWIg
Y29udGVudCBpbnRvIHRoZSBjYWNoZS4KKworICAgICAgICBUaGUgd2F5IHRvIHNvbHZlIGl0IGlz
IGJ5IGhhdmluZyBHcmFwaGljc0xheWVyUXQgbWFuYWdlIHRoZSBjYWNoZSBkaXJlY3RseQorICAg
ICAgICB2aWEgUVBpeG1hcENhY2hlLCBpbnN0ZWFkIG9mIHVzaW5nIFFHcmFwaGljc0l0ZW0gY2Fj
aGUgbW9kZXMuCisKKyAgICAgICAgRlBTIG1lYXN1cmVtZW50IHNob3dzIHNpZ25pZmljYW50IGlt
cHJvdmVtZW50ICgyMEZQUyBiZWZvcmUsIDQwRlBTIGFmdGVyKQorICAgICAgICBvbiBzZXZlcmFs
IHVzZS1jYXNlcywgaW5jbHVkaW5nIGJsb2ctZmlsZXMvbGVhdmVzIG9uIGEgZGVza3RvcCBlbnZp
cm9ubWVudC4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL3F0L0dyYXBoaWNzTGF5ZXJR
dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0xheWVyUXRJbXBsOjpHcmFwaGljc0xh
eWVyUXRJbXBsKToKKyAgICAgICAgKFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXJRdEltcGw6OnJlY2Fj
aGUpOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NMYXllclF0SW1wbDo6cGFpbnQpOgorICAg
ICAgICAoV2ViQ29yZTo6R3JhcGhpY3NMYXllclF0SW1wbDo6Zmx1c2hDaGFuZ2VzKToKKwogMjAx
MC0wNC0yMSAgWGFuIExvcGV6ICA8eGxvcGV6QGlnYWxpYS5jb20+CiAKICAgICAgICAgVHJ5IHRv
IGZpeCBjb21waWxhdGlvbiBvbiBHVEsrIGRlYnVnIGJvdHMuCmRpZmYgLS1naXQgYS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL3F0L0dyYXBoaWNzTGF5ZXJRdC5jcHAgYi9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL3F0L0dyYXBoaWNzTGF5ZXJRdC5jcHAKaW5kZXggODM0Y2Q0Zi4uYTMxZDA0
NSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9xdC9HcmFwaGljc0xheWVy
UXQuY3BwCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvcXQvR3JhcGhpY3NMYXllclF0
LmNwcApAQCAtNDEsNiArNDEsNyBAQAogI2luY2x1ZGUgPFF0R3VpL3FwYWludGVyLmg+CiAjaW5j
bHVkZSA8UXRHdWkvcXBhbGV0dGUuaD4KICNpbmNsdWRlIDxRdEd1aS9xcGl4bWFwLmg+CisjaW5j
bHVkZSA8UXRHdWkvcXBpeG1hcGNhY2hlLmg+CiAjaW5jbHVkZSA8UXRHdWkvcXN0eWxlb3B0aW9u
Lmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTE1MCw2ICsxNTEsMTIgQEAgcHVibGljOgog
ICAgIC8vIGxldCB0aGUgY29tcG9zaXRvci1BUEkgdGVsbCB1cyB3aGljaCBwcm9wZXJ0aWVzIHdl
cmUgY2hhbmdlZAogICAgIHZvaWQgbm90aWZ5Q2hhbmdlKENoYW5nZU1hc2spOwogCisgICAgLy8g
YWN0dWFsIHJlbmRlcmluZyBvZiB0aGUgd2ViLWNvbnRlbnQgaW50byBhIFFQaXhtYXAKKyAgICAv
LyBXZSBwcmVmZXIgdG8gdXNlIG91ciBvd24gY2FjaGluZyBiZWNhdXNlIGl0IGdpdmVzIHVzIGEg
aGlnaGVyIGxldmVsIG9mIGdyYW51bGFyaXR5IHRoYW4gUUdyYXBoaWNzSXRlbSBjYWNoZSBtb2Rl
cyAtCisgICAgLy8gc29tZXRpbWVzIHdlIG5lZWQgdG8gY2FjaGUgdGhlIGNvbnRlbnRzIGV2ZW4g
YHRob3VnaCB0aGUgaXRlbSBuZWVkcyB0byBiZSB1cGRhdGVkLCBlLmcuIHdoZW4gdGhlIGJhY2tn
cm91bmQtY29sb3IgaXMgY2hhbmdlZC4KKyAgICAvLyBUT0RPOiBpbnZlc3RpZ2F0ZSBpZiBRR3Jh
cGhpY3NJdGVtIGNhY2hpbmcgY2FuIGJlIGltcHJvdmVkIHRvIHN1cHBvcnQgdGhhdCBvdXQgb2Yg
dGhlIGJveC4KKyAgICBRUGl4bWFwIHJlY2FjaGUoY29uc3QgUVJlZ2lvbiYpOworCiAgICAgLy8g
Y2FsbGVkIHdoZW4gdGhlIGNvbXBvc2l0b3IgaXMgcmVhZHkgZm9yIHVzIHRvIHNob3cgdGhlIGNo
YW5nZXMgb24gc2NyZWVuCiAgICAgLy8gdGhpcyBpcyBjYWxsZWQgaW5kaXJlY3RseSBmcm9tIENo
cm9tZUNsaWVudFF0OjpzZXROZWVkc09uZVNob3REcmF3aW5nU3luY2hyb25pemF0aW9uCiAgICAg
Ly8gKG1lYW5pbmcgdGhlIHN5bmMgd291bGQgaGFwcGVuIHRvZ2V0aGVyIHdpdGggdGhlIG5leHQg
ZHJhdykKQEAgLTIwMyw2ICsyMTAsNyBAQCBwdWJsaWM6CiAgICAgaW50IG1fY2hhbmdlTWFzazsK
IAogICAgIFFTaXplRiBtX3NpemU7CisgICAgUVBpeG1hcENhY2hlOjpLZXkgbV9iYWNraW5nU3Rv
cmVLZXk7CiAjaWZuZGVmIFFUX05PX0FOSU1BVElPTgogICAgIFFMaXN0PFFXZWFrUG9pbnRlcjxR
QWJzdHJhY3RBbmltYXRpb24+ID4gbV9hbmltYXRpb25zOwogI2VuZGlmCkBAIC0yNTUsOSArMjYz
LDYgQEAgR3JhcGhpY3NMYXllclF0SW1wbDo6R3JhcGhpY3NMYXllclF0SW1wbChHcmFwaGljc0xh
eWVyUXQqIG5ld0xheWVyKQogICAgIC8vIHRoZXkgYXJlIGlnbm9yZWQgYW5kIHBhc3NlZCB0byB0
aGUgaXRlbSBiZWxvdy4KICAgICBzZXRFbmFibGVkKHRydWUpOwogCi0gICAgLy8gd2UnbGwgc2V0
IHRoZSBjYWNoZSB3aGVuIHdlIGtub3cgd2hhdCdzIGdvaW5nIG9uCi0gICAgc2V0Q2FjaGVNb2Rl
KEl0ZW1Db29yZGluYXRlQ2FjaGUpOwotCiAgICAgY29ubmVjdCh0aGlzLCBTSUdOQUwobm90aWZ5
QW5pbWF0aW9uU3RhcnRlZEFzeW5jKCkpLCB0aGlzLCBTTE9UKG5vdGlmeUFuaW1hdGlvblN0YXJ0
ZWQoKSksIFF0OjpRdWV1ZWRDb25uZWN0aW9uKTsKIH0KIApAQCAtMjgzLDYgKzI4OCw0MSBAQCBH
cmFwaGljc0xheWVyUXRJbXBsOjp+R3JhcGhpY3NMYXllclF0SW1wbCgpCiAjZW5kaWYKIH0KIAor
CitRUGl4bWFwIEdyYXBoaWNzTGF5ZXJRdEltcGw6OnJlY2FjaGUoY29uc3QgUVJlZ2lvbiYgcmVn
aW9uVG9VcGRhdGUpCit7CisgICAgaWYgKCFtX2xheWVyLT5kcmF3c0NvbnRlbnQoKSkKKyAgICAg
ICAgcmV0dXJuIFFQaXhtYXAoKTsKKworICAgIFFSZWdpb24gcmVnaW9uID0gcmVnaW9uVG9VcGRh
dGU7CisgICAgUVBpeG1hcCBwaXhtYXA7CisKKyAgICAvLyBXZSBtaWdodCBiZSBkcmF3aW5nIGlu
dG8gYW4gZXhpc3RpbmcgY2FjaGUuCisgICAgaWYgKCFRUGl4bWFwQ2FjaGU6OmZpbmQobV9iYWNr
aW5nU3RvcmVLZXksICZwaXhtYXApKQorICAgICAgICByZWdpb24gPSBRUmVnaW9uKGJvdW5kaW5n
UmVjdCgpLnRvQWxpZ25lZFJlY3QoKSk7CisKKyAgICBpZiAobV9zaXplICE9IHBpeG1hcC5zaXpl
KCkpIHsKKyAgICAgICAgcGl4bWFwID0gUVBpeG1hcChtX3NpemUudG9TaXplKCkpOworICAgICAg
ICBpZiAoIW1fbGF5ZXItPmNvbnRlbnRzT3BhcXVlKCkpCisgICAgICAgICAgICBwaXhtYXAuZmls
bChRdDo6dHJhbnNwYXJlbnQpOworICAgICAgICBtX3BlbmRpbmdDb250ZW50LnJlZ2lvblRvVXBk
YXRlID0gUVJlZ2lvbihRUmVjdChRUG9pbnQoMCwgMCksIG1fc2l6ZS50b1NpemUoKSkpOworICAg
IH0KKworICAgIFFQYWludGVyIHBhaW50ZXIoJnBpeG1hcCk7CisgICAgR3JhcGhpY3NDb250ZXh0
IGdjKCZwYWludGVyKTsKKworICAgIC8vIENsZWFyIHRoZSBhcmVhIGluIGNhY2hlIHRoYXQgd2Un
cmUgZHJhd2luZyBpbnRvCisgICAgcGFpbnRlci5zZXRDb21wb3NpdGlvbk1vZGUoUVBhaW50ZXI6
OkNvbXBvc2l0aW9uTW9kZV9DbGVhcik7CisgICAgcGFpbnRlci5maWxsUmVjdChyZWdpb24uYm91
bmRpbmdSZWN0KCksIFF0Ojp0cmFuc3BhcmVudCk7CisKKyAgICAvLyBSZW5kZXIgdGhlIGFjdHVh
bCBjb250ZW50cyBpbnRvIHRoZSBjYWNoZQorICAgIHBhaW50ZXIuc2V0Q29tcG9zaXRpb25Nb2Rl
KFFQYWludGVyOjpDb21wb3NpdGlvbk1vZGVfU291cmNlT3Zlcik7CisgICAgbV9sYXllci0+cGFp
bnRHcmFwaGljc0xheWVyQ29udGVudHMoZ2MsIHJlZ2lvbi5ib3VuZGluZ1JlY3QoKSk7CisKKyAg
ICBtX2JhY2tpbmdTdG9yZUtleSA9IFFQaXhtYXBDYWNoZTo6aW5zZXJ0KHBpeG1hcCk7ICAgIAor
ICAgIHJldHVybiBwaXhtYXA7Cit9CisKIHZvaWQgR3JhcGhpY3NMYXllclF0SW1wbDo6dXBkYXRl
VHJhbnNmb3JtKCkKIHsKICAgICBzZXRCYXNlVHJhbnNmb3JtKGlzVHJhbnNmb3JtQW5pbWF0aW9u
UnVubmluZygpID8gbV9iYXNlVHJhbnNmb3JtIDogbV9sYXllci0+dHJhbnNmb3JtKCkpOwpAQCAt
MzcwLDkgKzQxMCwxMiBAQCB2b2lkIEdyYXBoaWNzTGF5ZXJRdEltcGw6OnBhaW50KFFQYWludGVy
KiBwYWludGVyLCBjb25zdCBRU3R5bGVPcHRpb25HcmFwaGljc0l0ZQogICAgIHN3aXRjaCAobV9j
dXJyZW50Q29udGVudC5jb250ZW50VHlwZSkgewogICAgIGNhc2UgSFRNTENvbnRlbnRUeXBlOgog
ICAgICAgICBpZiAobV9zdGF0ZS5kcmF3c0NvbnRlbnQpIHsKLSAgICAgICAgICAgIC8vIHRoaXMg
aXMgdGhlIGV4cGVuc2l2ZSBiaXQuIHdlIHRyeSB0byBtaW5pbWl6ZSBjYWxscyB0byB0aGlzIGFy
ZWEgYnkgcHJvcGVyIGNhY2hpbmcKLSAgICAgICAgICAgIEdyYXBoaWNzQ29udGV4dCBnYyhwYWlu
dGVyKTsKLSAgICAgICAgICAgIG1fbGF5ZXItPnBhaW50R3JhcGhpY3NMYXllckNvbnRlbnRzKGdj
LCBvcHRpb24tPnJlY3QpOworICAgICAgICAgICAgUVBpeG1hcCBiYWNraW5nU3RvcmU7CisgICAg
ICAgICAgICAvLyBXZSBtaWdodCBuZWVkIHRvIHJlY2FjaGUsIGluIGNhc2Ugd2UgdHJ5IHRvIHBh
aW50IGFuZCB0aGUgY2FjaGUKKyAgICAgICAgICAgIC8vIHdhcyBwdXJnZWQgKGUuZy4gaWYgaXQg
d2FzIGZ1bGwpLgorICAgICAgICAgICAgaWYgKCFRUGl4bWFwQ2FjaGU6OmZpbmQobV9iYWNraW5n
U3RvcmVLZXksICZiYWNraW5nU3RvcmUpIHx8IGJhY2tpbmdTdG9yZS5zaXplKCkgIT0gbV9zaXpl
LnRvU2l6ZSgpKQorICAgICAgICAgICAgICAgIGJhY2tpbmdTdG9yZSA9IHJlY2FjaGUoUVJlZ2lv
bihib3VuZGluZ1JlY3QoKS50b0FsaWduZWRSZWN0KCkpKTsKKyAgICAgICAgICAgIHBhaW50ZXIt
PmRyYXdQaXhtYXAoMCwgMCwgYmFja2luZ1N0b3JlKTsKICAgICAgICAgfQogICAgICAgICBicmVh
azsKICAgICBjYXNlIFBpeG1hcENvbnRlbnRUeXBlOgpAQCAtNDg0LDE5ICs1MjcsMTMgQEAgdm9p
ZCBHcmFwaGljc0xheWVyUXRJbXBsOjpmbHVzaENoYW5nZXMoYm9vbCByZWN1cnNpdmUsIGJvb2wg
Zm9yY2VVcGRhdGVUcmFuc2Zvcm0KICAgICAgICAgICAgIHVwZGF0ZSgpOwogICAgICAgICAgICAg
c2V0RmxhZyhJdGVtSGFzTm9Db250ZW50cywgZmFsc2UpOwogCi0gICAgICAgICAgICAvLyBubyBw
b2ludCBpbiBjYWNoaW5nIGEgZGlyZWN0bHkgY29tcG9zaXRlZCBwaXhtYXAgaW50byBhbm90aGVy
IHBpeG1hcAotICAgICAgICAgICAgc2V0Q2FjaGVNb2RlKE5vQ2FjaGUpOwotCiAgICAgICAgICAg
ICBicmVhazsKICAgICAgICAgY2FzZSBNZWRpYUNvbnRlbnRUeXBlOgogICAgICAgICAgICAgc2V0
RmxhZyhJdGVtSGFzTm9Db250ZW50cywgdHJ1ZSk7Ci0gICAgICAgICAgICBzZXRDYWNoZU1vZGUo
Tm9DYWNoZSk7CiAgICAgICAgICAgICBtX3BlbmRpbmdDb250ZW50Lm1lZGlhTGF5ZXIuZGF0YSgp
LT5zZXRQYXJlbnRJdGVtKHRoaXMpOwogICAgICAgICAgICAgYnJlYWs7CiAKICAgICAgICAgY2Fz
ZSBDb2xvckNvbnRlbnRUeXBlOgotICAgICAgICAgICAgLy8gbm8gcG9pbnQgaW4gY2FjaGluZyBh
IHNvbGlkLWNvbG9yIHJlY3RhbmdsZQotICAgICAgICAgICAgc2V0Q2FjaGVNb2RlKE5vQ2FjaGUp
OwogICAgICAgICAgICAgaWYgKG1fcGVuZGluZ0NvbnRlbnQuY29udGVudFR5cGUgIT0gbV9jdXJy
ZW50Q29udGVudC5jb250ZW50VHlwZSB8fCBtX3BlbmRpbmdDb250ZW50LmNvbnRlbnRzQmFja2dy
b3VuZENvbG9yICE9IG1fY3VycmVudENvbnRlbnQuY29udGVudHNCYWNrZ3JvdW5kQ29sb3IpCiAg
ICAgICAgICAgICAgICAgdXBkYXRlKCk7CiAgICAgICAgICAgICBtX3N0YXRlLmRyYXdzQ29udGVu
dCA9IGZhbHNlOwpAQCAtNTA5LDEyICs1NDYsOCBAQCB2b2lkIEdyYXBoaWNzTGF5ZXJRdEltcGw6
OmZsdXNoQ2hhbmdlcyhib29sIHJlY3Vyc2l2ZSwgYm9vbCBmb3JjZVVwZGF0ZVRyYW5zZm9ybQog
ICAgICAgICBjYXNlIEhUTUxDb250ZW50VHlwZToKICAgICAgICAgICAgIGlmIChtX3BlbmRpbmdD
b250ZW50LmNvbnRlbnRUeXBlICE9IG1fY3VycmVudENvbnRlbnQuY29udGVudFR5cGUpCiAgICAg
ICAgICAgICAgICAgdXBkYXRlKCk7Ci0gICAgICAgICAgICBpZiAoIW1fc3RhdGUuZHJhd3NDb250
ZW50ICYmIG1fbGF5ZXItPmRyYXdzQ29udGVudCgpKSB7CisgICAgICAgICAgICBpZiAoIW1fc3Rh
dGUuZHJhd3NDb250ZW50ICYmIG1fbGF5ZXItPmRyYXdzQ29udGVudCgpKQogICAgICAgICAgICAg
ICAgIHVwZGF0ZSgpOwotICAgICAgICAgICAgICAgIGlmIChtX2xheWVyLT5kcmF3c0NvbnRlbnQo
KSAmJiAhbV9tYXNrRWZmZWN0KQotICAgICAgICAgICAgICAgICAgICBzZXRDYWNoZU1vZGUoSXRl
bUNvb3JkaW5hdGVDYWNoZSk7Ci0gICAgICAgICAgICB9IGVsc2UgaWYgKCFtX2xheWVyLT5kcmF3
c0NvbnRlbnQoKSkKLSAgICAgICAgICAgICAgICBzZXRDYWNoZU1vZGUoTm9DYWNoZSk7CiAKICAg
ICAgICAgICAgIHNldEZsYWcoSXRlbUhhc05vQ29udGVudHMsICFtX2xheWVyLT5kcmF3c0NvbnRl
bnQoKSk7CiAgICAgICAgICAgICBicmVhazsKQEAgLTU0NCw4ICs1NzcsMTIgQEAgdm9pZCBHcmFw
aGljc0xheWVyUXRJbXBsOjpmbHVzaENoYW5nZXMoYm9vbCByZWN1cnNpdmUsIGJvb2wgZm9yY2VV
cGRhdGVUcmFuc2Zvcm0KIAogICAgIGlmIChtX21hc2tFZmZlY3QpCiAgICAgICAgIG1fbWFza0Vm
ZmVjdC5kYXRhKCktPnVwZGF0ZSgpOwotICAgIGVsc2UgaWYgKG1fY2hhbmdlTWFzayAmIERpc3Bs
YXlDaGFuZ2UpCisgICAgZWxzZSBpZiAobV9jaGFuZ2VNYXNrICYgRGlzcGxheUNoYW5nZSkgeyAg
ICAgICAgCisgICAgICAgIC8vIFJlY2FjaGUgbm93OiBhbGwgdGhlIGNvbnRlbnQgaXMgcmVhZHkg
YW5kIHdlIGRvbid0IHdhbnQgdG8gd2FpdCB1bnRpbCB0aGUgcGFpbnQgZXZlbnQuCisgICAgICAg
IHJlY2FjaGUobV9wZW5kaW5nQ29udGVudC5yZWdpb25Ub1VwZGF0ZSk7CiAgICAgICAgIHVwZGF0
ZShtX3BlbmRpbmdDb250ZW50LnJlZ2lvblRvVXBkYXRlLmJvdW5kaW5nUmVjdCgpKTsKKyAgICAg
ICAgbV9wZW5kaW5nQ29udGVudC5yZWdpb25Ub1VwZGF0ZSA9IFFSZWdpb24oKTsKKyAgICB9CiAK
ICAgICBpZiAoKG1fY2hhbmdlTWFzayAmIEJhY2tncm91bmRDb2xvckNoYW5nZSkgJiYgKG1fcGVu
ZGluZ0NvbnRlbnQuYmFja2dyb3VuZENvbG9yICE9IG1fY3VycmVudENvbnRlbnQuYmFja2dyb3Vu
ZENvbG9yKSkKICAgICAgICAgdXBkYXRlKCk7CkBAIC01NzIsNyArNjA5LDYgQEAgdm9pZCBHcmFw
aGljc0xheWVyUXRJbXBsOjpmbHVzaENoYW5nZXMoYm9vbCByZWN1cnNpdmUsIGJvb2wgZm9yY2VV
cGRhdGVUcmFuc2Zvcm0KICAgICBtX2N1cnJlbnRDb250ZW50LmNvbnRlbnRUeXBlID0gbV9wZW5k
aW5nQ29udGVudC5jb250ZW50VHlwZTsKICAgICBtX2N1cnJlbnRDb250ZW50Lm1lZGlhTGF5ZXIg
PSBtX3BlbmRpbmdDb250ZW50Lm1lZGlhTGF5ZXI7CiAgICAgbV9jdXJyZW50Q29udGVudC5iYWNr
Z3JvdW5kQ29sb3IgPSBtX3BlbmRpbmdDb250ZW50LmJhY2tncm91bmRDb2xvcjsKLSAgICBtX2N1
cnJlbnRDb250ZW50LnJlZ2lvblRvVXBkYXRlIHw9IG1fcGVuZGluZ0NvbnRlbnQucmVnaW9uVG9V
cGRhdGU7CiAgICAgbV9jdXJyZW50Q29udGVudC5jb250ZW50c0JhY2tncm91bmRDb2xvciA9IG1f
cGVuZGluZ0NvbnRlbnQuY29udGVudHNCYWNrZ3JvdW5kQ29sb3I7CiAgICAgbV9wZW5kaW5nQ29u
dGVudC5yZWdpb25Ub1VwZGF0ZSA9IFFSZWdpb24oKTsKICAgICBtX2NoYW5nZU1hc2sgPSBOb0No
YW5nZXM7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>