<?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>30425</bug_id>
          
          <creation_ts>2009-10-15 21:13:05 -0700</creation_ts>
          <short_desc>Compositing layers not correctly updated after partial layout</short_desc>
          <delta_ts>2009-10-18 10:18:03 -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>Mac</rep_platform>
          <op_sys>OS X 10.5</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>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>154993</commentid>
    <comment_count>0</comment_count>
      <attachid>41263</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2009-10-15 21:13:05 -0700</bug_when>
    <thetext>Created attachment 41263
Testcase

When a partial layout happens (with a non-null subroot), some compositing layers can be left un-updated, and thus display in the wrong positions. This happens because RenderLayerBacking::updateAfterLayout() assumes that some parent layer is going to update the geometry this layer, but, in the case of a partial layout, the parent layer may not be affected by layout.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>154997</commentid>
    <comment_count>1</comment_count>
      <attachid>41264</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2009-10-15 21:34:52 -0700</bug_when>
    <thetext>Created attachment 41264
WIP patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>155502</commentid>
    <comment_count>2</comment_count>
      <attachid>41380</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2009-10-18 09:52:39 -0700</bug_when>
    <thetext>Created attachment 41380
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>155503</commentid>
    <comment_count>3</comment_count>
      <attachid>41380</attachid>
    <who name="">mitz</who>
    <bug_when>2009-10-18 10:04:07 -0700</bug_when>
    <thetext>Comment on attachment 41380
Patch

&gt; +        When a partial layout happend, for example as the result of a postion-change-only

Typo: happend.

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>155505</commentid>
    <comment_count>4</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2009-10-18 10:18:03 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/49753</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>41263</attachid>
            <date>2009-10-15 21:13:05 -0700</date>
            <delta_ts>2009-10-15 21:13:05 -0700</delta_ts>
            <desc>Testcase</desc>
            <filename>index.html</filename>
            <type>text/html</type>
            <size>1098</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">PCFET0NUWVBFPgo8aHRtbD4KPGhlYWQ+CiAgPHRpdGxlPlBhcnRpYWwgbGF5b3V0IGNvbXBvc2l0
aW5nIHVwZGF0ZTwvdGl0bGU+CgogIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyIgbWVkaWE9InNjcmVl
biI+CiAgLmNvbnRhaW5lciB7CiAgCXBvc2l0aW9uOiByZWxhdGl2ZTsKICAJd2lkdGg6IDQwMHB4
OwogIAloZWlnaHQ6IDIwMHB4OwogIAlib3JkZXI6IDFweCBzb2xpZCBibGFjazsKICAJb3ZlcmZs
b3c6IGhpZGRlbjsKICB9CgogIC5sZWZ0cGFuZWwgewogIAlwb3NpdGlvbjogYWJzb2x1dGU7CiAg
CXRvcDogMHB4OwogIAlsZWZ0OiAyMDBweDsKICAJd2lkdGg6IDIwMHB4OwogIAloZWlnaHQ6IDIw
MHB4OwogIAl6LWluZGV4OiAzOwogIAliYWNrZ3JvdW5kLWNvbG9yOiAjYmJiOwogIAktd2Via2l0
LXRyYW5zaXRpb246IGxlZnQgMXMgbGluZWFyOwogIH0KCiAgLmJveCB7CiAgCXdpZHRoOiAxMDBw
eDsKICAJaGVpZ2h0OiAxMDBweDsKICB9CgogIC5sZWZ0cGFuZWwgLmNvbnRlbnQgewogIAliYWNr
Z3JvdW5kLWNvbG9yOiBncmVlbjsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDAp
OwogIH0KICAKICAuaW5kaWNhdG9yIHsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIHRvcDog
MDsKICAgIGxlZnQ6IDA7CiAgCWJhY2tncm91bmQtY29sb3I6IHJlZDsKICB9CiAgPC9zdHlsZT4K
ICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgY2hhcnNldD0idXRmLTgiPgogICAgZnVu
Y3Rpb24gc3RhcnRQcm9ncmFtKCkKICAgIHsKCQkJZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxl
ZnRwYW5lbCIpLnN0eWxlLmxlZnQgPSAiMCI7CiAgICB9CgogICAgd2luZG93LmFkZEV2ZW50TGlz
dGVuZXIoJ2xvYWQnLCBzdGFydFByb2dyYW0sIGZhbHNlKQogICAgPC9zY3JpcHQ+CjwvaGVhZD4K
PGJvZHk+CgogIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgCTxkaXYgaWQ9ImxlZnRwYW5lbCIg
Y2xhc3M9ImxlZnRwYW5lbCI+CiAgCSAgPGRpdiBjbGFzcz0iaW5kaWNhdG9yIGJveCI+PC9kaXY+
CiAgCQk8ZGl2IGNsYXNzPSJjb250ZW50IGJveCI+PC9kaXY+CiAgCTwvZGl2PgogIDwvZGl2PgoK
PC9ib2R5Pgo8L2h0bWw+
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>41264</attachid>
            <date>2009-10-15 21:34:52 -0700</date>
            <delta_ts>2009-10-18 09:52:39 -0700</delta_ts>
            <desc>WIP patch</desc>
            <filename>30425_wip_patch.txt</filename>
            <type>text/plain</type>
            <size>6063</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2dlb21ldHJ5L3BhcnRpYWwtbGF5
b3V0LXVwZGF0ZS5odG1sIGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvZ2VvbWV0cnkvcGFydGlh
bC1sYXlvdXQtdXBkYXRlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4u
OWVmY2E1NgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2dlb21l
dHJ5L3BhcnRpYWwtbGF5b3V0LXVwZGF0ZS5odG1sCkBAIC0wLDAgKzEsNjMgQEAKKzwhRE9DVFlQ
RT4KKzxodG1sPgorPGhlYWQ+CisgIDx0aXRsZT5QYXJ0aWFsIGxheW91dCBjb21wb3NpdGluZyB1
cGRhdGU8L3RpdGxlPgorCisgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyIgbWVkaWE9InNjcmVlbiI+
CisgIC5jb250YWluZXIgeworICAJcG9zaXRpb246IHJlbGF0aXZlOworICAJd2lkdGg6IDQwMHB4
OworICAJaGVpZ2h0OiAyMDBweDsKKyAgCWJvcmRlcjogMXB4IHNvbGlkIGJsYWNrOworICAJb3Zl
cmZsb3c6IGhpZGRlbjsKKyAgfQorCisgIC5sZWZ0cGFuZWwgeworICAJcG9zaXRpb246IGFic29s
dXRlOworICAJdG9wOiAwcHg7CisgIAlsZWZ0OiAyMDBweDsKKyAgCXdpZHRoOiAyMDBweDsKKyAg
CWhlaWdodDogMjAwcHg7CisgIAl6LWluZGV4OiAzOworICAJYmFja2dyb3VuZC1jb2xvcjogI2Ji
YjsKKyAgCS13ZWJraXQtdHJhbnNpdGlvbjogbGVmdCA1cyBsaW5lYXI7CisgIH0KKworICAuYm94
IHsKKyAgCXdpZHRoOiAxMDBweDsKKyAgCWhlaWdodDogMTAwcHg7CisgIH0KKworICAubGVmdHBh
bmVsIC5jb250ZW50IHsKKyAgCWJhY2tncm91bmQtY29sb3I6IGdyZWVuOworICAgIC13ZWJraXQt
dHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApOworICB9CisgIAorICAuaW5kaWNhdG9yIHsKKyAgICBw
b3NpdGlvbjogYWJzb2x1dGU7CisgICAgdG9wOiAwOworICAgIGxlZnQ6IDA7CisgIAliYWNrZ3Jv
dW5kLWNvbG9yOiByZWQ7CisgIH0KKyAgPC9zdHlsZT4KKyAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2ph
dmFzY3JpcHQiIGNoYXJzZXQ9InV0Zi04Ij4KKyAgICBmdW5jdGlvbiBzdGFydFByb2dyYW0oKQor
ICAgIHsKKwkJCWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsZWZ0cGFuZWwiKS5zdHlsZS5sZWZ0
ID0gIjAiOworICAgIH0KKworICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgc3Rh
cnRQcm9ncmFtLCBmYWxzZSkKKyAgICA8L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorCisgIDxw
PlRoZSBncmVlbiBib3ggc2hvdWxkIGFsd2F5cyBvYnNjdXJlIHRoZSByZWQgYm94IGJlbG93Ljwv
cD4KKyAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KKyAgCTxkaXYgaWQ9ImxlZnRwYW5lbCIgY2xh
c3M9ImxlZnRwYW5lbCI+CisgIAkgIDxkaXYgY2xhc3M9ImluZGljYXRvciBib3giPjwvZGl2Pgor
ICAJCTxkaXYgY2xhc3M9ImNvbnRlbnQgYm94Ij48L2Rpdj4KKyAgCTwvZGl2PgorICA8L2Rpdj4K
KworPC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdp
dCBhL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwIGIvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5j
cHAKaW5kZXggMTk5MzUxMy4uMDllMjg0NyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wYWdlL0ZyYW1l
Vmlldy5jcHAKKysrIGIvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAKQEAgLTY1Miw2ICs2NTIs
NyBAQCB2b2lkIEZyYW1lVmlldzo6bGF5b3V0KGJvb2wgYWxsb3dTdWJ0cmVlKQogICAgIGJlZ2lu
RGVmZXJyZWRSZXBhaW50cygpOwogICAgIGxheWVyLT51cGRhdGVMYXllclBvc2l0aW9ucygobV9k
b0Z1bGxSZXBhaW50ID8gUmVuZGVyTGF5ZXI6OkRvRnVsbFJlcGFpbnQgOiAwKQogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB8IFJlbmRlckxheWVyOjpDaGVja0ZvclJlcGFpbnQKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBSZW5kZXJMYXllcjo6SXNMYXlvdXRSb290
TGF5ZXIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBSZW5kZXJMYXllcjo6VXBk
YXRlQ29tcG9zaXRpbmdMYXllcnMpOwogICAgIGVuZERlZmVycmVkUmVwYWludHMoKTsKIApkaWZm
IC0tZ2l0IGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwIGIvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCmluZGV4IDkzNTZjNzAuLjdiNGQ2NTUgMTAwNjQ0Ci0tLSBh
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcAorKysgYi9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJMYXllci5jcHAKQEAgLTMxMSwxMiArMzExLDIwIEBAIHZvaWQgUmVuZGVyTGF5ZXI6
OnVwZGF0ZUxheWVyUG9zaXRpb25zKFVwZGF0ZUxheWVyUG9zaXRpb25zRmxhZ3MgZmxhZ3MpCiAg
ICAgaWYgKG1fcmVmbGVjdGlvbikKICAgICAgICAgbV9yZWZsZWN0aW9uLT5sYXlvdXQoKTsKIAor
I2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElORykKKyAgICBib29sIGlzVXBkYXRlUm9vdCA9
IChmbGFncyAmIElzTGF5b3V0Um9vdExheWVyKTsKKyAgICBpZiAoKGZsYWdzICYgVXBkYXRlQ29t
cG9zaXRpbmdMYXllcnMpICYmIGlzQ29tcG9zaXRlZCgpKQorICAgICAgICBmbGFncyAmPSB+SXNM
YXlvdXRSb290TGF5ZXI7CisjZWxzZQorICAgIGZsYWdzICY9IH5Jc0xheW91dFJvb3RMYXllcjsK
KyNlbmRpZgorCiAgICAgZm9yIChSZW5kZXJMYXllciogY2hpbGQgPSBmaXJzdENoaWxkKCk7IGNo
aWxkOyBjaGlsZCA9IGNoaWxkLT5uZXh0U2libGluZygpKQogICAgICAgICBjaGlsZC0+dXBkYXRl
TGF5ZXJQb3NpdGlvbnMoZmxhZ3MpOwogCiAjaWYgVVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5H
KQogICAgIGlmICgoZmxhZ3MgJiBVcGRhdGVDb21wb3NpdGluZ0xheWVycykgJiYgaXNDb21wb3Np
dGVkKCkpCi0gICAgICAgIGJhY2tpbmcoKS0+dXBkYXRlQWZ0ZXJMYXlvdXQoUmVuZGVyTGF5ZXJC
YWNraW5nOjpDb21wb3NpdGluZ0NoaWxkcmVuKTsKKyAgICAgICAgYmFja2luZygpLT51cGRhdGVB
ZnRlckxheW91dChSZW5kZXJMYXllckJhY2tpbmc6OkNvbXBvc2l0aW5nQ2hpbGRyZW4sIGlzVXBk
YXRlUm9vdCk7CiAjZW5kaWYKICAgICAgICAgCiAgICAgLy8gV2l0aCBhbGwgb3VyIGNoaWxkcmVu
IHBvc2l0aW9uZWQsIG5vdyB1cGRhdGUgb3VyIG1hcnF1ZWUgaWYgd2UgbmVlZCB0by4KQEAgLTEx
NDAsNyArMTE0OCw3IEBAIHZvaWQgUmVuZGVyTGF5ZXI6OnNjcm9sbFRvT2Zmc2V0KGludCB4LCBp
bnQgeSwgYm9vbCB1cGRhdGVTY3JvbGxiYXJzLCBib29sIHJlcGFpCiAjaWYgVVNFKEFDQ0VMRVJB
VEVEX0NPTVBPU0lUSU5HKQogICAgIGlmIChjb21wb3NpdG9yKCktPmluQ29tcG9zaXRpbmdNb2Rl
KCkpIHsKICAgICAgICAgaWYgKFJlbmRlckxheWVyKiBjb21wb3NpdGluZ0FuY2VzdG9yID0gYW5j
ZXN0b3JDb21wb3NpdGluZ0xheWVyKCkpCi0gICAgICAgICAgICBjb21wb3NpdGluZ0FuY2VzdG9y
LT5iYWNraW5nKCktPnVwZGF0ZUFmdGVyTGF5b3V0KFJlbmRlckxheWVyQmFja2luZzo6QWxsRGVz
Y2VuZGFudHMpOworICAgICAgICAgICAgY29tcG9zaXRpbmdBbmNlc3Rvci0+YmFja2luZygpLT51
cGRhdGVBZnRlckxheW91dChSZW5kZXJMYXllckJhY2tpbmc6OkFsbERlc2NlbmRhbnRzLCB0cnVl
KTsKICAgICB9CiAjZW5kaWYKICAgICAKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlckxheWVyLmggYi9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5oCmluZGV4IGU2YTE1
YzUuLjEzYjZkMzIgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmgK
KysrIGIvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuaApAQCAtMjk4LDcgKzI5OCw4IEBA
IHB1YmxpYzoKICAgICBlbnVtIFVwZGF0ZUxheWVyUG9zaXRpb25zRmxhZyB7CiAgICAgICAgIERv
RnVsbFJlcGFpbnQgPSAxLAogICAgICAgICBDaGVja0ZvclJlcGFpbnQgPSAxIDw8IDEsCi0gICAg
ICAgIFVwZGF0ZUNvbXBvc2l0aW5nTGF5ZXJzID0gMSA8PCAyLAorICAgICAgICBJc0xheW91dFJv
b3RMYXllciA9IDEgPDwgMiwKKyAgICAgICAgVXBkYXRlQ29tcG9zaXRpbmdMYXllcnMgPSAxIDw8
IDMsCiAgICAgfTsKICAgICB0eXBlZGVmIHVuc2lnbmVkIFVwZGF0ZUxheWVyUG9zaXRpb25zRmxh
Z3M7CiAgICAgdm9pZCB1cGRhdGVMYXllclBvc2l0aW9ucyhVcGRhdGVMYXllclBvc2l0aW9uc0Zs
YWdzID0gRG9GdWxsUmVwYWludCB8IFVwZGF0ZUNvbXBvc2l0aW5nTGF5ZXJzKTsKZGlmZiAtLWdp
dCBhL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQmFja2luZy5jcHAgYi9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJMYXllckJhY2tpbmcuY3BwCmluZGV4IGJmNThhMmUuLjJlNzg2NzEgMTAw
NjQ0Ci0tLSBhL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQmFja2luZy5jcHAKKysrIGIv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJCYWNraW5nLmNwcApAQCAtMTQ4LDggKzE0OCwx
MCBAQCB2b2lkIFJlbmRlckxheWVyQmFja2luZzo6dXBkYXRlQ29tcG9zaXRlZEJvdW5kcygpCiAg
ICAgc2V0Q29tcG9zaXRlZEJvdW5kcyhsYXllckJvdW5kcyk7CiB9CiAKLXZvaWQgUmVuZGVyTGF5
ZXJCYWNraW5nOjp1cGRhdGVBZnRlckxheW91dChVcGRhdGVEZXB0aCB1cGRhdGVEZXB0aCkKK3Zv
aWQgUmVuZGVyTGF5ZXJCYWNraW5nOjp1cGRhdGVBZnRlckxheW91dChVcGRhdGVEZXB0aCB1cGRh
dGVEZXB0aCwgYm9vbCBpc1VwZGF0ZVJvb3QpCiB7CisgICAgZnByaW50ZihzdGRlcnIsICJSZW5k
ZXJMYXllckJhY2tpbmc6OnVwZGF0ZUFmdGVyTGF5b3V0IGxheWVyICVwXG4iLCBtX293bmluZ0xh
eWVyKTsKKwogICAgIFJlbmRlckxheWVyQ29tcG9zaXRvciogbGF5ZXJDb21wb3NpdG9yID0gY29t
cG9zaXRvcigpOwogICAgIGlmICghbGF5ZXJDb21wb3NpdG9yLT5jb21wb3NpdGluZ0xheWVyc05l
ZWRSZWJ1aWxkKCkpIHsKICAgICAgICAgLy8gQ2FsbGluZyB1cGRhdGVHcmFwaGljc0xheWVyR2Vv
bWV0cnkoKSBoZXJlIGdpdmVzIGluY29ycmVjdCByZXN1bHRzLCBiZWNhdXNlIHRoZQpAQCAtMTYy
LDcgKzE2NCw3IEBAIHZvaWQgUmVuZGVyTGF5ZXJCYWNraW5nOjp1cGRhdGVBZnRlckxheW91dChV
cGRhdGVEZXB0aCB1cGRhdGVEZXB0aCkKICAgICAgICAgdXBkYXRlQ29tcG9zaXRlZEJvdW5kcygp
OwogICAgICAgICBsYXllckNvbXBvc2l0b3ItPnVwZGF0ZUNvbXBvc2l0aW5nRGVzY2VuZGFudEdl
b21ldHJ5KG1fb3duaW5nTGF5ZXIsIG1fb3duaW5nTGF5ZXIsIHVwZGF0ZURlcHRoKTsKICAgICAg
ICAgCi0gICAgICAgIGlmICghbV9vd25pbmdMYXllci0+cGFyZW50KCkpIHsKKyAgICAgICAgaWYg
KGlzVXBkYXRlUm9vdCkgewogICAgICAgICAgICAgdXBkYXRlR3JhcGhpY3NMYXllckdlb21ldHJ5
KCk7CiAgICAgICAgICAgICBsYXllckNvbXBvc2l0b3ItPnVwZGF0ZVJvb3RMYXllclBvc2l0aW9u
KCk7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVy
QmFja2luZy5oIGIvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJCYWNraW5nLmgKaW5kZXgg
ZTEyYWE1OC4uOGY5NWE5NCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5
ZXJCYWNraW5nLmgKKysrIGIvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJCYWNraW5nLmgK
QEAgLTU0LDcgKzU0LDcgQEAgcHVibGljOgogICAgIFJlbmRlckxheWVyKiBvd25pbmdMYXllcigp
IGNvbnN0IHsgcmV0dXJuIG1fb3duaW5nTGF5ZXI7IH0KIAogICAgIGVudW0gVXBkYXRlRGVwdGgg
eyBDb21wb3NpdGluZ0NoaWxkcmVuLCBBbGxEZXNjZW5kYW50cyB9OwotICAgIHZvaWQgdXBkYXRl
QWZ0ZXJMYXlvdXQoVXBkYXRlRGVwdGgpOworICAgIHZvaWQgdXBkYXRlQWZ0ZXJMYXlvdXQoVXBk
YXRlRGVwdGgsIGJvb2wgaXNVcGRhdGVSb290KTsKICAgICAKICAgICAvLyBSZXR1cm5zIHRydWUg
aWYgbGF5ZXIgY29uZmlndXJhdGlvbiBjaGFuZ2VkLgogICAgIGJvb2wgdXBkYXRlR3JhcGhpY3NM
YXllckNvbmZpZ3VyYXRpb24oKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>41380</attachid>
            <date>2009-10-18 09:52:39 -0700</date>
            <delta_ts>2009-10-18 10:04:07 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>30425_patch.txt</filename>
            <type>text/plain</type>
            <size>10960</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAyNWJiMmI3Li4wM2VlY2FjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMDktMTAt
MTggIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ29tcG9zaXRpbmcgbGF5ZXJzIG5v
dCBjb3JyZWN0bHkgdXBkYXRlZCBhZnRlciBwYXJ0aWFsIGxheW91dAorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzA0MjUKKyAgICAgICAgCisgICAgICAg
IFRlc3RjYXNlIHRoYXQgaGl0cyB0aGUgInBvc2l0aW9uIGNoYW5nZSBvbmx5IiBsYXlvdXQgcGF0
aCwgdGh1cyBkb2luZyBhIHN1YnRyZWUgbGF5b3V0LAorICAgICAgICB0byBlbnN1cmUgdGhhdCBj
b21wb3NpdGluZyBsYXllcnMgYXJlIGNvcnJlY3RseSBwb3NpdGlvbmVkLgorCisgICAgICAgICog
Y29tcG9zaXRpbmcvZ2VvbWV0cnkvcGFydGlhbC1sYXlvdXQtdXBkYXRlLmh0bWw6IEFkZGVkLgor
ICAgICAgICAqIHBsYXRmb3JtL21hYy9jb21wb3NpdGluZy9nZW9tZXRyeS9wYXJ0aWFsLWxheW91
dC11cGRhdGUtZXhwZWN0ZWQuY2hlY2tzdW06IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL21h
Yy9jb21wb3NpdGluZy9nZW9tZXRyeS9wYXJ0aWFsLWxheW91dC11cGRhdGUtZXhwZWN0ZWQucG5n
OiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvY29tcG9zaXRpbmcvZ2VvbWV0cnkvcGFy
dGlhbC1sYXlvdXQtdXBkYXRlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisKIDIwMDktMTAtMTcgIFl1
dGEgS2l0YW11cmEgIDx5dXRha0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkg
RGFyaW4gQWRsZXIuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9jb21wb3NpdGluZy9nZW9tZXRy
eS9wYXJ0aWFsLWxheW91dC11cGRhdGUuaHRtbCBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL2dl
b21ldHJ5L3BhcnRpYWwtbGF5b3V0LXVwZGF0ZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAuLjNkMWRjN2MKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9jb21w
b3NpdGluZy9nZW9tZXRyeS9wYXJ0aWFsLWxheW91dC11cGRhdGUuaHRtbApAQCAtMCwwICsxLDcx
IEBACis8IURPQ1RZUEU+Cis8aHRtbD4KKzxoZWFkPgorICA8dGl0bGU+UGFydGlhbCBsYXlvdXQg
Y29tcG9zaXRpbmcgdXBkYXRlPC90aXRsZT4KKworICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiIG1l
ZGlhPSJzY3JlZW4iPgorICAuY29udGFpbmVyIHsKKyAgCXBvc2l0aW9uOiByZWxhdGl2ZTsKKyAg
CXdpZHRoOiA0MDBweDsKKyAgCWhlaWdodDogMjAwcHg7CisgIAlib3JkZXI6IDFweCBzb2xpZCBi
bGFjazsKKyAgCW92ZXJmbG93OiBoaWRkZW47CisgIH0KKworICAucGFuZWwgeworICAJcG9zaXRp
b246IGFic29sdXRlOworICAJdG9wOiAwcHg7CisgIAlsZWZ0OiAyMDBweDsKKyAgCXdpZHRoOiAy
MDBweDsKKyAgCWhlaWdodDogMjAwcHg7CisgIAl6LWluZGV4OiAzOworICAJYmFja2dyb3VuZC1j
b2xvcjogI2JiYjsKKyAgCS13ZWJraXQtdHJhbnNpdGlvbjogbGVmdCAwLjFzIGxpbmVhcjsKKyAg
fQorCisgIC5ib3ggeworICAJd2lkdGg6IDEwMHB4OworICAJaGVpZ2h0OiAxMDBweDsKKyAgfQor
CisgIC5wYW5lbCAuY29udGVudCB7CisgIAliYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsKKyAgICAt
d2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsKKyAgfQorICAKKyAgLmluZGljYXRvciB7
CisgICAgcG9zaXRpb246IGFic29sdXRlOworICAgIHRvcDogMDsKKyAgICBsZWZ0OiAwOworICAJ
YmFja2dyb3VuZC1jb2xvcjogcmVkOworICB9CisgIDwvc3R5bGU+CisgIDxzY3JpcHQgdHlwZT0i
dGV4dC9qYXZhc2NyaXB0IiBjaGFyc2V0PSJ1dGYtOCI+CisgICAgaWYgKHdpbmRvdy5sYXlvdXRU
ZXN0Q29udHJvbGxlcikKKyAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRpbERvbmUo
KTsKKworICAgIGZ1bmN0aW9uIHN0YXJ0UHJvZ3JhbSgpCisgICAgeworICAgICAgdmFyIHBhbmVs
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInBhbmVsIik7CisgICAgICBwYW5lbC5hZGRFdmVu
dExpc3RlbmVyKCd3ZWJraXRUcmFuc2l0aW9uRW5kJywgZnVuY3Rpb24oKSB7CisgICAgICAgIGlm
ICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAgICAgbGF5b3V0VGVzdENvbnRy
b2xsZXIubm90aWZ5RG9uZSgpOworICAgICAgfSwgZmFsc2UpOworCQkJcGFuZWwuc3R5bGUubGVm
dCA9ICIwIjsKKyAgICB9CisKKyAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIHN0
YXJ0UHJvZ3JhbSwgZmFsc2UpCisgICAgPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKworICA8
cD5UaGUgZ3JlZW4gYm94IHNob3VsZCBhbHdheXMgb2JzY3VyZSB0aGUgcmVkIGJveCBiZWxvdy48
L3A+CisgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CisgIAk8ZGl2IGlkPSJwYW5lbCIgY2xhc3M9
InBhbmVsIj4KKyAgCSAgPGRpdiBjbGFzcz0iaW5kaWNhdG9yIGJveCI+PC9kaXY+CisgIAkJPGRp
diBjbGFzcz0iY29udGVudCBib3giPjwvZGl2PgorICAJPC9kaXY+CisgIDwvZGl2PgorCis8L2Jv
ZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2NvbXBvc2l0aW5nL2dlb21ldHJ5L3BhcnRpYWwtbGF5b3V0
LXVwZGF0ZS1leHBlY3RlZC5jaGVja3N1bSBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9jb21w
b3NpdGluZy9nZW9tZXRyeS9wYXJ0aWFsLWxheW91dC11cGRhdGUtZXhwZWN0ZWQuY2hlY2tzdW0K
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTM3OTM4MQotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9jb21wb3NpdGluZy9nZW9tZXRyeS9wYXJ0
aWFsLWxheW91dC11cGRhdGUtZXhwZWN0ZWQuY2hlY2tzdW0KQEAgLTAsMCArMSBAQAorNThhOGYz
ZGEwOGM3YmJiNDkxNzQ2M2FkMzQxMmUzNWEKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvY29tcG9zaXRpbmcvZ2VvbWV0cnkv
cGFydGlhbC1sYXlvdXQtdXBkYXRlLWV4cGVjdGVkLnBuZyBiL0xheW91dFRlc3RzL3BsYXRmb3Jt
L21hYy9jb21wb3NpdGluZy9nZW9tZXRyeS9wYXJ0aWFsLWxheW91dC11cGRhdGUtZXhwZWN0ZWQu
cG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJhNmQ2OWIKQmluYXJ5IGZp
bGVzIC9kZXYvbnVsbCBhbmQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvY29tcG9zaXRpbmcv
Z2VvbWV0cnkvcGFydGlhbC1sYXlvdXQtdXBkYXRlLWV4cGVjdGVkLnBuZyBkaWZmZXIKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9jb21wb3NpdGluZy9nZW9tZXRyeS9wYXJ0
aWFsLWxheW91dC11cGRhdGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFj
L2NvbXBvc2l0aW5nL2dlb21ldHJ5L3BhcnRpYWwtbGF5b3V0LXVwZGF0ZS1leHBlY3RlZC50eHQK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzNlY2U2ZQotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9jb21wb3NpdGluZy9nZW9tZXRyeS9wYXJ0
aWFsLWxheW91dC11cGRhdGUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTYgQEAKK2xheWVyIGF0
ICgwLDApIHNpemUgODAweDYwMAorICBSZW5kZXJWaWV3IGF0ICgwLDApIHNpemUgODAweDYwMAor
bGF5ZXIgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCisgIFJlbmRlckJsb2NrIHtIVE1MfSBhdCAoMCww
KSBzaXplIDgwMHg2MDAKKyAgICBSZW5kZXJCb2R5IHtCT0RZfSBhdCAoOCw4KSBzaXplIDc4NHg1
ODQKKyAgICAgIFJlbmRlckJsb2NrIHtQfSBhdCAoMCwwKSBzaXplIDc4NHgxOAorICAgICAgICBS
ZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSAzNjF4MTgKKyAgICAgICAgICB0ZXh0IHJ1
biBhdCAoMCwwKSB3aWR0aCAzNjE6ICJUaGUgZ3JlZW4gYm94IHNob3VsZCBhbHdheXMgb2JzY3Vy
ZSB0aGUgcmVkIGJveCBiZWxvdy4iCitsYXllciBhdCAoOCw0Mikgc2l6ZSA0MDJ4MjAyIGNsaXAg
YXQgKDksNDMpIHNpemUgNDAweDIwMAorICBSZW5kZXJCbG9jayAocmVsYXRpdmUgcG9zaXRpb25l
ZCkge0RJVn0gYXQgKDAsMzQpIHNpemUgNDAyeDIwMiBbYm9yZGVyOiAoMXB4IHNvbGlkICMwMDAw
MDApXQorbGF5ZXIgYXQgKDksNDMpIHNpemUgMjAweDIwMAorICBSZW5kZXJCbG9jayAocG9zaXRp
b25lZCkgekk6IDMge0RJVn0gYXQgKDEsMSkgc2l6ZSAyMDB4MjAwIFtiZ2NvbG9yPSNCQkJCQkJd
CitsYXllciBhdCAoOSw0Mykgc2l6ZSAxMDB4MTAwCisgIFJlbmRlckJsb2NrIChwb3NpdGlvbmVk
KSB7RElWfSBhdCAoMCwwKSBzaXplIDEwMHgxMDAgW2JnY29sb3I9I0ZGMDAwMF0KK2xheWVyIGF0
ICg5LDQzKSBzaXplIDEwMHgxMDAKKyAgUmVuZGVyQmxvY2sge0RJVn0gYXQgKDAsMCkgc2l6ZSAx
MDB4MTAwIFtiZ2NvbG9yPSMwMDgwMDBdCmRpZmYgLS1naXQgYS9XZWJDb3JlL0NoYW5nZUxvZyBi
L1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDU4OTA3MDEuLjRkOTQyZjMgMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzEgQEAK
KzIwMDktMTAtMTggIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ29tcG9zaXRpbmcg
bGF5ZXJzIG5vdCBjb3JyZWN0bHkgdXBkYXRlZCBhZnRlciBwYXJ0aWFsIGxheW91dAorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzA0MjUKKyAgICAgICAg
CisgICAgICAgIFdoZW4gYSBwYXJ0aWFsIGxheW91dCBoYXBwZW5kLCBmb3IgZXhhbXBsZSBhcyB0
aGUgcmVzdWx0IG9mIGEgcG9zdGlvbi1jaGFuZ2Utb25seQorICAgICAgICBsYXlvdXQsIHRoZW4g
c29tZSBjb21wb3NpdGluZyBsYXllciBwb3NpdGlvbnMgd2VyZSBub3QgY29ycmVjdGx5IHVwZGF0
ZWQuIFRvIGZpeAorICAgICAgICB0aGlzLCB1cGRhdGVMYXllclBvc2l0aW9ucygpIG5vdyBjYXJy
aWVzIGFsb25nIGEgZmxhZyB0aGF0IGlzIHNldCBhdCB0aGUgcm9vdG1vc3QKKyAgICAgICAgbGF5
ZXIgYmVpbmcgdXBkYXRlZCwgYW5kIHVzZWQgdG8gZGV0ZXJtaW5lIHdoZW4gd2UgaGl0IHRoZSBm
aXJzdCBjb21wb3NpdGluZyBsYXllcgorICAgICAgICBpbiB0aGlzIHVwZGF0ZS4gUmVuZGVyTGF5
ZXJCYWNraW5nOjp1cGRhdGVBZnRlckxheW91dCgpIG1ha2VzIHVzZSBvZiB0aGlzIGluZm9ybWF0
aW9uCisgICAgICAgIHRvIGRvIGEgZnVsbCBnZW9tZXRyeSB1cGRhdGUgb24gdGhhdCBsYXllciwg
d2hpY2ggaXMgdGh1cyB0aGUgcm9vdG1vc3QgY29tcG9zaXRpbmcKKyAgICAgICAgbGF5ZXIgdGhh
dCBpcyBiZWluZyB1cGRhdGVkLgorCisgICAgICAgIFRlc3Q6IGNvbXBvc2l0aW5nL2dlb21ldHJ5
L3BhcnRpYWwtbGF5b3V0LXVwZGF0ZS5odG1sCisKKyAgICAgICAgKiBwYWdlL0ZyYW1lVmlldy5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZVZpZXc6OmxheW91dCk6CisgICAgICAgICogcmVu
ZGVyaW5nL1JlbmRlckxheWVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyOjp1
cGRhdGVMYXllclBvc2l0aW9ucyk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllcjo6c2Ny
b2xsVG9PZmZzZXQpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJMYXllci5oOgorICAgICAg
ICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXI6Oik6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckxh
eWVyQmFja2luZy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllckJhY2tpbmc6OnVw
ZGF0ZUFmdGVyTGF5b3V0KToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyTGF5ZXJCYWNraW5n
Lmg6CisKIDIwMDktMTAtMTcgIE5pa29sYXMgWmltbWVybWFubiAgPG56aW1tZXJtYW5uQHJpbS5j
b20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgR2VvcmdlIFN0YWlrb3MuCmRpZmYgLS1naXQgYS9X
ZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcCBiL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwCmlu
ZGV4IDE5OTM1MTMuLmJjNGU0ZjIgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcu
Y3BwCisrKyBiL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwCkBAIC02NTIsNiArNjUyLDcgQEAg
dm9pZCBGcmFtZVZpZXc6OmxheW91dChib29sIGFsbG93U3VidHJlZSkKICAgICBiZWdpbkRlZmVy
cmVkUmVwYWludHMoKTsKICAgICBsYXllci0+dXBkYXRlTGF5ZXJQb3NpdGlvbnMoKG1fZG9GdWxs
UmVwYWludCA/IFJlbmRlckxheWVyOjpEb0Z1bGxSZXBhaW50IDogMCkKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfCBSZW5kZXJMYXllcjo6Q2hlY2tGb3JSZXBhaW50CisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHwgUmVuZGVyTGF5ZXI6OklzQ29tcG9zaXRpbmdVcGRh
dGVSb290CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgUmVuZGVyTGF5ZXI6OlVw
ZGF0ZUNvbXBvc2l0aW5nTGF5ZXJzKTsKICAgICBlbmREZWZlcnJlZFJlcGFpbnRzKCk7CiAKZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcCBiL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlckxheWVyLmNwcAppbmRleCA5MzU2YzcwLi5mZWE2MWM5IDEwMDY0NAotLS0g
YS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5jcHAKKysrIGIvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyTGF5ZXIuY3BwCkBAIC0zMTEsMTIgKzMxMSwxOSBAQCB2b2lkIFJlbmRlckxheWVy
Ojp1cGRhdGVMYXllclBvc2l0aW9ucyhVcGRhdGVMYXllclBvc2l0aW9uc0ZsYWdzIGZsYWdzKQog
ICAgIGlmIChtX3JlZmxlY3Rpb24pCiAgICAgICAgIG1fcmVmbGVjdGlvbi0+bGF5b3V0KCk7CiAK
KyNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpCisgICAgLy8gQ2xlYXIgdGhlIElzQ29t
cG9zaXRpbmdVcGRhdGVSb290IGZsYWcgb25jZSB3ZSd2ZSBmb3VuZCB0aGUgZmlyc3QgY29tcG9z
aXRpbmcgbGF5ZXIgaW4gdGhpcyB1cGRhdGUuCisgICAgYm9vbCBpc1VwZGF0ZVJvb3QgPSAoZmxh
Z3MgJiBJc0NvbXBvc2l0aW5nVXBkYXRlUm9vdCk7CisgICAgaWYgKGlzQ29tcG9zaXRlZCgpKQor
ICAgICAgICBmbGFncyAmPSB+SXNDb21wb3NpdGluZ1VwZGF0ZVJvb3Q7CisjZW5kaWYKKwogICAg
IGZvciAoUmVuZGVyTGF5ZXIqIGNoaWxkID0gZmlyc3RDaGlsZCgpOyBjaGlsZDsgY2hpbGQgPSBj
aGlsZC0+bmV4dFNpYmxpbmcoKSkKICAgICAgICAgY2hpbGQtPnVwZGF0ZUxheWVyUG9zaXRpb25z
KGZsYWdzKTsKIAogI2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElORykKICAgICBpZiAoKGZs
YWdzICYgVXBkYXRlQ29tcG9zaXRpbmdMYXllcnMpICYmIGlzQ29tcG9zaXRlZCgpKQotICAgICAg
ICBiYWNraW5nKCktPnVwZGF0ZUFmdGVyTGF5b3V0KFJlbmRlckxheWVyQmFja2luZzo6Q29tcG9z
aXRpbmdDaGlsZHJlbik7CisgICAgICAgIGJhY2tpbmcoKS0+dXBkYXRlQWZ0ZXJMYXlvdXQoUmVu
ZGVyTGF5ZXJCYWNraW5nOjpDb21wb3NpdGluZ0NoaWxkcmVuLCBpc1VwZGF0ZVJvb3QpOwogI2Vu
ZGlmCiAgICAgICAgIAogICAgIC8vIFdpdGggYWxsIG91ciBjaGlsZHJlbiBwb3NpdGlvbmVkLCBu
b3cgdXBkYXRlIG91ciBtYXJxdWVlIGlmIHdlIG5lZWQgdG8uCkBAIC0xMTM5LDggKzExNDYsMTAg
QEAgdm9pZCBSZW5kZXJMYXllcjo6c2Nyb2xsVG9PZmZzZXQoaW50IHgsIGludCB5LCBib29sIHVw
ZGF0ZVNjcm9sbGJhcnMsIGJvb2wgcmVwYWkKIAogI2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJ
VElORykKICAgICBpZiAoY29tcG9zaXRvcigpLT5pbkNvbXBvc2l0aW5nTW9kZSgpKSB7Ci0gICAg
ICAgIGlmIChSZW5kZXJMYXllciogY29tcG9zaXRpbmdBbmNlc3RvciA9IGFuY2VzdG9yQ29tcG9z
aXRpbmdMYXllcigpKQotICAgICAgICAgICAgY29tcG9zaXRpbmdBbmNlc3Rvci0+YmFja2luZygp
LT51cGRhdGVBZnRlckxheW91dChSZW5kZXJMYXllckJhY2tpbmc6OkFsbERlc2NlbmRhbnRzKTsK
KyAgICAgICAgaWYgKFJlbmRlckxheWVyKiBjb21wb3NpdGluZ0FuY2VzdG9yID0gYW5jZXN0b3JD
b21wb3NpdGluZ0xheWVyKCkpIHsKKyAgICAgICAgICAgIGJvb2wgaXNVcGRhdGVSb290ID0gdHJ1
ZTsKKyAgICAgICAgICAgIGNvbXBvc2l0aW5nQW5jZXN0b3ItPmJhY2tpbmcoKS0+dXBkYXRlQWZ0
ZXJMYXlvdXQoUmVuZGVyTGF5ZXJCYWNraW5nOjpBbGxEZXNjZW5kYW50cywgaXNVcGRhdGVSb290
KTsKKyAgICAgICAgfQogICAgIH0KICNlbmRpZgogICAgIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyTGF5ZXIuaCBiL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmgK
aW5kZXggZTZhMTVjNS4uYTI3NDYzOCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyTGF5ZXIuaAorKysgYi9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5oCkBAIC0yOTgs
MTAgKzI5OCwxMSBAQCBwdWJsaWM6CiAgICAgZW51bSBVcGRhdGVMYXllclBvc2l0aW9uc0ZsYWcg
ewogICAgICAgICBEb0Z1bGxSZXBhaW50ID0gMSwKICAgICAgICAgQ2hlY2tGb3JSZXBhaW50ID0g
MSA8PCAxLAotICAgICAgICBVcGRhdGVDb21wb3NpdGluZ0xheWVycyA9IDEgPDwgMiwKKyAgICAg
ICAgSXNDb21wb3NpdGluZ1VwZGF0ZVJvb3QgPSAxIDw8IDIsCisgICAgICAgIFVwZGF0ZUNvbXBv
c2l0aW5nTGF5ZXJzID0gMSA8PCAzLAogICAgIH07CiAgICAgdHlwZWRlZiB1bnNpZ25lZCBVcGRh
dGVMYXllclBvc2l0aW9uc0ZsYWdzOwotICAgIHZvaWQgdXBkYXRlTGF5ZXJQb3NpdGlvbnMoVXBk
YXRlTGF5ZXJQb3NpdGlvbnNGbGFncyA9IERvRnVsbFJlcGFpbnQgfCBVcGRhdGVDb21wb3NpdGlu
Z0xheWVycyk7CisgICAgdm9pZCB1cGRhdGVMYXllclBvc2l0aW9ucyhVcGRhdGVMYXllclBvc2l0
aW9uc0ZsYWdzID0gRG9GdWxsUmVwYWludCB8IElzQ29tcG9zaXRpbmdVcGRhdGVSb290IHwgVXBk
YXRlQ29tcG9zaXRpbmdMYXllcnMpOwogCiAgICAgdm9pZCB1cGRhdGVUcmFuc2Zvcm0oKTsKIApk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJCYWNraW5nLmNwcCBiL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQmFja2luZy5jcHAKaW5kZXggNTBlNDc1Ni4uNGM4
Mjg0MyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJCYWNraW5nLmNw
cAorKysgYi9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckJhY2tpbmcuY3BwCkBAIC0xNDgs
NyArMTQ4LDcgQEAgdm9pZCBSZW5kZXJMYXllckJhY2tpbmc6OnVwZGF0ZUNvbXBvc2l0ZWRCb3Vu
ZHMoKQogICAgIHNldENvbXBvc2l0ZWRCb3VuZHMobGF5ZXJCb3VuZHMpOwogfQogCi12b2lkIFJl
bmRlckxheWVyQmFja2luZzo6dXBkYXRlQWZ0ZXJMYXlvdXQoVXBkYXRlRGVwdGggdXBkYXRlRGVw
dGgpCit2b2lkIFJlbmRlckxheWVyQmFja2luZzo6dXBkYXRlQWZ0ZXJMYXlvdXQoVXBkYXRlRGVw
dGggdXBkYXRlRGVwdGgsIGJvb2wgaXNVcGRhdGVSb290KQogewogICAgIFJlbmRlckxheWVyQ29t
cG9zaXRvciogbGF5ZXJDb21wb3NpdG9yID0gY29tcG9zaXRvcigpOwogICAgIGlmICghbGF5ZXJD
b21wb3NpdG9yLT5jb21wb3NpdGluZ0xheWVyc05lZWRSZWJ1aWxkKCkpIHsKQEAgLTE2Miw3ICsx
NjIsNyBAQCB2b2lkIFJlbmRlckxheWVyQmFja2luZzo6dXBkYXRlQWZ0ZXJMYXlvdXQoVXBkYXRl
RGVwdGggdXBkYXRlRGVwdGgpCiAgICAgICAgIHVwZGF0ZUNvbXBvc2l0ZWRCb3VuZHMoKTsKICAg
ICAgICAgbGF5ZXJDb21wb3NpdG9yLT51cGRhdGVDb21wb3NpdGluZ0Rlc2NlbmRhbnRHZW9tZXRy
eShtX293bmluZ0xheWVyLCBtX293bmluZ0xheWVyLCB1cGRhdGVEZXB0aCk7CiAgICAgICAgIAot
ICAgICAgICBpZiAoIW1fb3duaW5nTGF5ZXItPnBhcmVudCgpKSB7CisgICAgICAgIGlmIChpc1Vw
ZGF0ZVJvb3QpIHsKICAgICAgICAgICAgIHVwZGF0ZUdyYXBoaWNzTGF5ZXJHZW9tZXRyeSgpOwog
ICAgICAgICAgICAgbGF5ZXJDb21wb3NpdG9yLT51cGRhdGVSb290TGF5ZXJQb3NpdGlvbigpOwog
ICAgICAgICB9CmRpZmYgLS1naXQgYS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckJhY2tp
bmcuaCBiL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQmFja2luZy5oCmluZGV4IGUxMmFh
NTguLjhmOTVhOTQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQmFj
a2luZy5oCisrKyBiL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQmFja2luZy5oCkBAIC01
NCw3ICs1NCw3IEBAIHB1YmxpYzoKICAgICBSZW5kZXJMYXllciogb3duaW5nTGF5ZXIoKSBjb25z
dCB7IHJldHVybiBtX293bmluZ0xheWVyOyB9CiAKICAgICBlbnVtIFVwZGF0ZURlcHRoIHsgQ29t
cG9zaXRpbmdDaGlsZHJlbiwgQWxsRGVzY2VuZGFudHMgfTsKLSAgICB2b2lkIHVwZGF0ZUFmdGVy
TGF5b3V0KFVwZGF0ZURlcHRoKTsKKyAgICB2b2lkIHVwZGF0ZUFmdGVyTGF5b3V0KFVwZGF0ZURl
cHRoLCBib29sIGlzVXBkYXRlUm9vdCk7CiAgICAgCiAgICAgLy8gUmV0dXJucyB0cnVlIGlmIGxh
eWVyIGNvbmZpZ3VyYXRpb24gY2hhbmdlZC4KICAgICBib29sIHVwZGF0ZUdyYXBoaWNzTGF5ZXJD
b25maWd1cmF0aW9uKCk7Cg==
</data>
<flag name="review"
          id="22755"
          type_id="1"
          status="+"
          setter="mitz"
    />
          </attachment>
      

    </bug>

</bugzilla>