<?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>99552</bug_id>
          
          <creation_ts>2012-10-17 00:20:47 -0700</creation_ts>
          <short_desc>The order of resolving distribution in tree composition is wrong</short_desc>
          <delta_ts>2012-10-23 09:39:19 -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>DOM</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>
          
          <blocked>96986</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Shinya Kawanaka">shinyak</reporter>
          <assigned_to name="Shinya Kawanaka">shinyak</assigned_to>
          <cc>webcomponents-bugzilla</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>743943</commentid>
    <comment_count>0</comment_count>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-10-17 00:20:47 -0700</bug_when>
    <thetext>When we have the following shadow dom, we should resolve distribution with the SR3 -&gt; SR2 -&gt; SR1 -&gt; SR4 order.

host -- SR1 -- SR2 -- SR3
                |
                |- A ------ SR4
                   |         |
                   |- B      | -- content
                   |
                   |- content</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>743953</commentid>
    <comment_count>1</comment_count>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-10-17 00:29:18 -0700</bug_when>
    <thetext>Hmm... It seems the current algorithm works correctly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>744189</commentid>
    <comment_count>2</comment_count>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-10-17 05:44:06 -0700</bug_when>
    <thetext>Hmm... I became not sure it&apos;s working correctly. At least, we have to have a test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>748241</commentid>
    <comment_count>3</comment_count>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-10-22 21:13:34 -0700</bug_when>
    <thetext>According to the current spec (W3C Editor&apos;s Draft 23 October 2012), we have to resolve &lt;content&gt; first.

4. Repeat while TREE exists:
  1. Let POINT be the first encountered active shadow insertion point in TREE, in tree order
  2. Run the distribution algorithm, supplying POOL and TREE as input
  3. If POINT exists:
    ....

https://dvcs.w3.org/hg/webcomponents/raw-file/tip/spec/shadow/index.html

We&apos;re resolving both &lt;shadow&gt; and &lt;content&gt; in tree order.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>748242</commentid>
    <comment_count>4</comment_count>
      <attachid>170055</attachid>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-10-22 21:18:48 -0700</bug_when>
    <thetext>Created attachment 170055
Repro

We have to show like the following:
  C
  B
  A

However, the first &lt;shadow&gt; selects all div now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>748280</commentid>
    <comment_count>5</comment_count>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-10-22 22:29:18 -0700</bug_when>
    <thetext>Now I have a patch for this, but this causes 30+ errors in fast/dom/shadow/.
It seems the tests are wrong...!!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>748286</commentid>
    <comment_count>6</comment_count>
      <attachid>170065</attachid>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-10-22 22:44:00 -0700</bug_when>
    <thetext>Created attachment 170065
WIP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>748292</commentid>
    <comment_count>7</comment_count>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-10-22 22:51:21 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; Now I have a patch for this, but this causes 30+ errors in fast/dom/shadow/.
&gt; It seems the tests are wrong...!!

Oops, not all the tests are wrong. My patch still has some bug maybe.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>748311</commentid>
    <comment_count>8</comment_count>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-10-22 23:56:05 -0700</bug_when>
    <thetext>Ahhhhhhh... I have a very stupid mistake in the WIP patch :-/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>748313</commentid>
    <comment_count>9</comment_count>
      <attachid>170070</attachid>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-10-23 00:03:18 -0700</bug_when>
    <thetext>Created attachment 170070
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>748702</commentid>
    <comment_count>10</comment_count>
      <attachid>170070</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2012-10-23 09:11:04 -0700</bug_when>
    <thetext>Comment on attachment 170070
Patch

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

&gt; Source/WebCore/html/shadow/ContentDistributor.cpp:107
&gt; +        if (ElementShadow* shadow = firstActiveShadowInsertionPointInOldestShadowRoot-&gt;parentNode()-&gt;isElementNode() ? toElement(firstActiveShadowInsertionPointInOldestShadowRoot-&gt;parentNode())-&gt;shadow() : 0)

I think you can turn this into a helper function -- you use it twice in this code, and it might be good to have a nice name explaining the purpose.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>748734</commentid>
    <comment_count>11</comment_count>
      <attachid>170070</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-10-23 09:39:16 -0700</bug_when>
    <thetext>Comment on attachment 170070
Patch

Clearing flags on attachment: 170070

Committed r132237: &lt;http://trac.webkit.org/changeset/132237&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>748735</commentid>
    <comment_count>12</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-10-23 09:39:19 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>170055</attachid>
            <date>2012-10-22 21:18:48 -0700</date>
            <delta_ts>2012-10-22 21:18:48 -0700</delta_ts>
            <desc>Repro</desc>
            <filename>content-reprojection-order.html</filename>
            <type>text/html</type>
            <size>463</size>
            <attacher name="Shinya Kawanaka">shinyak</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+Cgo8aHRtbD4KPGJvZHk+Cgo8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3Bv
bHlmaWxsLmpzIj48L3NjcmlwdD4KCjxkaXYgaWQ9Imhvc3QiPgogICAgPGRpdiBjbGFzcz0iYSI+
QTwvZGl2PgogICAgPGRpdiBjbGFzcz0iYiI+QjwvZGl2PgogICAgPGRpdiBjbGFzcz0iYyI+Qzwv
ZGl2Pgo8L2Rpdj4KCjxzY3JpcHQ+CnZhciBzaGFkb3dSb290ID0gbmV3IFdlYktpdFNoYWRvd1Jv
b3QoaG9zdCk7CgpzaGFkb3dSb290LmlubmVySFRNTCA9CiAgICAnPGRpdj48c2hhZG93Pjwvc2hh
ZG93PjwvZGl2PicgKyAKICAgICc8ZGl2Pjxjb250ZW50IHNlbGVjdD0iLmEiPjwvY29udGVudD48
c2hhZG93Pjwvc2hhZG93PjwvZGl2PicgKyAKICAgICc8ZGl2Pjxjb250ZW50IHNlbGVjdD0iLmIi
PjwvY29udGVudD48c2hhZG93Pjwvc2hhZG93PjwvZGl2Pic7Cjwvc2NyaXB0PgoKPC9ib2R5Pgo8
L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>170065</attachid>
            <date>2012-10-22 22:44:00 -0700</date>
            <delta_ts>2012-10-23 00:03:13 -0700</delta_ts>
            <desc>WIP</desc>
            <filename>bug-99552-20121023144237.patch</filename>
            <type>text/plain</type>
            <size>9372</size>
            <attacher name="Shinya Kawanaka">shinyak</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTMyMTcwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzNlMmQ3NTUyYTVkYWMy
YWEzYTgwMGMzZGIwNGMwOWY3NWRmYmE3OS4uYTExNjljZjBiODdlZDJjNzhkZGFjMDBhYzk4MDZi
MDYyZjdhOGMzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDEyLTEwLTIyICBTaGlu
eWEgS2F3YW5ha2EgIDxzaGlueWFrQGNocm9taXVtLm9yZz4KKworICAgICAgICBUaGUgb3JkZXIg
b2YgcmVzb2x2aW5nIGRpc3RyaWJ1dGlvbiBpbiB0cmVlIGNvbXBvc2l0aW9uIGlzIHdyb25nLgor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTk1NTIKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBY2NvcmRpbmcg
dG8gdGhlIGN1cnJlbnQgU2hhZG93RE9NIHNwZWMsIHdlIGhhdmUgdG8gcmVzb2x2ZSA8Y29udGVu
dD4gZmlyc3QsIHRoZW4gcmVzb2x2ZSA8c2hhZG93Pi4KKyAgICAgICAgSG93ZXZlciwgdGhlIG9y
ZGVyIG9mIHJlc29sdXRpb24gaXMgbm93IHRoZSBtaXhlZCB0cmVlIG9yZGVyIG9mIDxjb250ZW50
PiBhbmQgPHNoYWRvdz4uCisKKyAgICAgICAgVGVzdDogZmFzdC9kb20vc2hhZG93L2NvbnRlbnQt
cmVwcm9qZWN0aW9uLW9yZGVyLmh0bWwKKworICAgICAgICAqIGh0bWwvc2hhZG93L0NvbnRlbnRE
aXN0cmlidXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50RGlzdHJpYnV0b3I6OmRp
c3RyaWJ1dGUpOgorICAgICAgICAqIGh0bWwvc2hhZG93L0hUTUxTaGFkb3dFbGVtZW50Lmg6Cisg
ICAgICAgIChXZWJDb3JlOjppc0hUTUxTaGFkb3dFbGVtZW50KToKKyAgICAgICAgKFdlYkNvcmUp
OgorICAgICAgICAoV2ViQ29yZTo6dG9IVE1MU2hhZG93RWxlbWVudCk6CisKIDIwMTItMTAtMjIg
IEtlbnQgVGFtdXJhICA8dGtlbnRAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIEludHJvZHVjZSBM
b2NhbGl6ZXI6OnN0YW5kQWxvbmVNb250aExhYmVscwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaHRtbC9zaGFkb3cvQ29udGVudERpc3RyaWJ1dG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvc2hhZG93L0NvbnRlbnREaXN0cmlidXRvci5jcHAKaW5kZXggNjkyOWZkYzUwMmFkMDQ3YzRj
OTU1ODI1ZTcwOTU1YTU3OWMyODJiMS4uNTcxYzVhZWUyNWU3NWEwYzMxMjU2YmM3YjAyMmVmOTM5
ZWI1NTkzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvQ29udGVudERp
c3RyaWJ1dG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9Db250ZW50RGlz
dHJpYnV0b3IuY3BwCkBAIC0zMCw2ICszMCw3IEBACiAjaW5jbHVkZSAiQ29udGVudFNlbGVjdG9y
UXVlcnkuaCIKICNpbmNsdWRlICJFbGVtZW50U2hhZG93LmgiCiAjaW5jbHVkZSAiSFRNTENvbnRl
bnRFbGVtZW50LmgiCisjaW5jbHVkZSAiSFRNTFNoYWRvd0VsZW1lbnQuaCIKICNpbmNsdWRlICJT
aGFkb3dSb290LmgiCiAKIApAQCAtNTAsNyArNTEsNyBAQCBJbnNlcnRpb25Qb2ludCogQ29udGVu
dERpc3RyaWJ1dG9yOjpmaW5kSW5zZXJ0aW9uUG9pbnRGb3IoY29uc3QgTm9kZSoga2V5KSBjb25z
dAogfQogCiB2b2lkIENvbnRlbnREaXN0cmlidXRvcjo6ZGlzdHJpYnV0ZShFbGVtZW50KiBob3N0
KQoteworeyAgICAKICAgICBBU1NFUlQobmVlZHNEaXN0cmlidXRpb24oKSk7CiAgICAgQVNTRVJU
KG1fbm9kZVRvSW5zZXJ0aW9uUG9pbnQuaXNFbXB0eSgpKTsKIApAQCAtNzYsNiArNzcsNyBAQCB2
b2lkIENvbnRlbnREaXN0cmlidXRvcjo6ZGlzdHJpYnV0ZShFbGVtZW50KiBob3N0KQogICAgIFZl
Y3Rvcjxib29sPiBkaXN0cmlidXRlZChwb29sLnNpemUoKSk7CiAgICAgZGlzdHJpYnV0ZWQuZmls
bChmYWxzZSk7CiAKKyAgICBIVE1MU2hhZG93RWxlbWVudCogZmlyc3RBY3RpdmVTaGFkb3dJbnNl
cnRpb25Qb2ludEluT2xkZXN0U2hhZG93Um9vdCA9IDA7CiAgICAgZm9yIChTaGFkb3dSb290KiBy
b290ID0gaG9zdC0+eW91bmdlc3RTaGFkb3dSb290KCk7IHJvb3Q7IHJvb3QgPSByb290LT5vbGRl
clNoYWRvd1Jvb3QoKSkgewogICAgICAgICBmb3IgKE5vZGUqIG5vZGUgPSByb290OyBub2RlOyBu
b2RlID0gbm9kZS0+dHJhdmVyc2VOZXh0Tm9kZShyb290KSkgewogICAgICAgICAgICAgaWYgKCFp
c0luc2VydGlvblBvaW50KG5vZGUpKQpAQCAtODMsMTggKzg1LDI4IEBAIHZvaWQgQ29udGVudERp
c3RyaWJ1dG9yOjpkaXN0cmlidXRlKEVsZW1lbnQqIGhvc3QpCiAgICAgICAgICAgICBJbnNlcnRp
b25Qb2ludCogcG9pbnQgPSB0b0luc2VydGlvblBvaW50KG5vZGUpOwogICAgICAgICAgICAgaWYg
KCFwb2ludC0+aXNBY3RpdmUoKSkKICAgICAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAg
ICAgIFNoYWRvd1Jvb3QqIG9sZGVyID0gcm9vdC0+b2xkZXJTaGFkb3dSb290KCk7Ci0gICAgICAg
ICAgICBpZiAocG9pbnQtPmRvZXNTZWxlY3RGcm9tSG9zdENoaWxkcmVuKCkpCisKKyAgICAgICAg
ICAgIGlmIChpc0hUTUxTaGFkb3dFbGVtZW50KG5vZGUpKSB7CisgICAgICAgICAgICAgICAgaWYg
KHJvb3QtPm9sZGVyU2hhZG93Um9vdCgpKSB7CisgICAgICAgICAgICAgICAgICAgIGlmIChyb290
LT5vbGRlclNoYWRvd1Jvb3QoKS0+YXNzaWduZWRUbygpKSB7CisgICAgICAgICAgICAgICAgICAg
ICAgICBkaXN0cmlidXRlTm9kZUNoaWxkcmVuVG8ocG9pbnQsIHJvb3QtPm9sZGVyU2hhZG93Um9v
dCgpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHJvb3QtPm9sZGVyU2hhZG93Um9vdCgpLT5z
ZXRBc3NpZ25lZFRvKHBvaW50KTsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAg
ICAgIH0gZWxzZSBpZiAoIWZpcnN0QWN0aXZlU2hhZG93SW5zZXJ0aW9uUG9pbnRJbk9sZGVzdFNo
YWRvd1Jvb3QpCisgICAgICAgICAgICAgICAgICAgIGZpcnN0QWN0aXZlU2hhZG93SW5zZXJ0aW9u
UG9pbnRJbk9sZGVzdFNoYWRvd1Jvb3QgPSB0b0hUTUxTaGFkb3dFbGVtZW50KG5vZGUpOworICAg
ICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICBkaXN0cmlidXRlU2VsZWN0aW9uc1Rv
KHBvaW50LCBwb29sLCBkaXN0cmlidXRlZCk7Ci0gICAgICAgICAgICBlbHNlIGlmIChvbGRlciAm
JiAhb2xkZXItPmFzc2lnbmVkVG8oKSkgewotICAgICAgICAgICAgICAgIGRpc3RyaWJ1dGVOb2Rl
Q2hpbGRyZW5Ubyhwb2ludCwgb2xkZXIpOwotICAgICAgICAgICAgICAgIG9sZGVyLT5zZXRBc3Np
Z25lZFRvKHBvaW50KTsKKyAgICAgICAgICAgICAgICBpZiAoRWxlbWVudFNoYWRvdyogc2hhZG93
ID0gbm9kZS0+cGFyZW50Tm9kZSgpLT5pc0VsZW1lbnROb2RlKCkgPyB0b0VsZW1lbnQobm9kZS0+
cGFyZW50Tm9kZSgpKS0+c2hhZG93KCkgOiAwKQorICAgICAgICAgICAgICAgICAgICBzaGFkb3ct
PmludmFsaWRhdGVEaXN0cmlidXRpb24oKTsKICAgICAgICAgICAgIH0KLQotICAgICAgICAgICAg
aWYgKEVsZW1lbnRTaGFkb3cqIHNoYWRvdyA9IG5vZGUtPnBhcmVudE5vZGUoKS0+aXNFbGVtZW50
Tm9kZSgpID8gdG9FbGVtZW50KG5vZGUtPnBhcmVudE5vZGUoKSktPnNoYWRvdygpIDogMCkKLSAg
ICAgICAgICAgICAgICBzaGFkb3ctPmludmFsaWRhdGVEaXN0cmlidXRpb24oKTsKICAgICAgICAg
fQogICAgIH0KKworICAgIGlmIChmaXJzdEFjdGl2ZVNoYWRvd0luc2VydGlvblBvaW50SW5PbGRl
c3RTaGFkb3dSb290KSB7CisgICAgICAgIGRpc3RyaWJ1dGVTZWxlY3Rpb25zVG8oZmlyc3RBY3Rp
dmVTaGFkb3dJbnNlcnRpb25Qb2ludEluT2xkZXN0U2hhZG93Um9vdCwgcG9vbCwgZGlzdHJpYnV0
ZWQpOworICAgICAgICBpZiAoRWxlbWVudFNoYWRvdyogc2hhZG93ID0gZmlyc3RBY3RpdmVTaGFk
b3dJbnNlcnRpb25Qb2ludEluT2xkZXN0U2hhZG93Um9vdC0+cGFyZW50Tm9kZSgpLT5pc0VsZW1l
bnROb2RlKCkgPyB0b0VsZW1lbnQoZmlyc3RBY3RpdmVTaGFkb3dJbnNlcnRpb25Qb2ludEluT2xk
ZXN0U2hhZG93Um9vdC0+cGFyZW50Tm9kZSgpKS0+c2hhZG93KCkgOiAwKQorICAgICAgICAgICAg
c2hhZG93LT5pbnZhbGlkYXRlRGlzdHJpYnV0aW9uKCk7CisgICAgfQogfQogCiBib29sIENvbnRl
bnREaXN0cmlidXRvcjo6aW52YWxpZGF0ZShFbGVtZW50KiBob3N0KQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvSFRNTENvbnRlbnRFbGVtZW50LmggYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL3NoYWRvdy9IVE1MQ29udGVudEVsZW1lbnQuaAppbmRleCA2YmU0ODY2OWRjOTE1
ZDUzNTBmODdkZjA5NDI4NDIyMzBlZjA5MjQwLi40NWYwMzIzYjRhNzI3MzlkYzk5MTU4MDQyZmFh
MTRmNTQ2MDY3NzIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9IVE1M
Q29udGVudEVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9IVE1MQ29u
dGVudEVsZW1lbnQuaApAQCAtNDcsOCArNDcsNiBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRTZWxl
Y3QoY29uc3QgQXRvbWljU3RyaW5nJik7CiAgICAgdmlydHVhbCBib29sIGlzU2VsZWN0VmFsaWQo
KSBjb25zdDsKIAotICAgIGJvb2wgZG9lc1NlbGVjdEZyb21Ib3N0Q2hpbGRyZW4oKSBjb25zdCB7
IHJldHVybiB0cnVlOyB9Ci0KIHByb3RlY3RlZDoKICAgICBIVE1MQ29udGVudEVsZW1lbnQoY29u
c3QgUXVhbGlmaWVkTmFtZSYsIERvY3VtZW50Kik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvc2hhZG93L0hUTUxTaGFkb3dFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvc2hhZG93L0hUTUxTaGFkb3dFbGVtZW50LmNwcAppbmRleCA1YzVkYmU5NGZmZTQ0NmU2ZmUw
YjYzZjZkMGU3ZWI2M2U2NDkzZTE0Li43ZDdlNDE1MjlmYmRmMTZmMTMwNDA4ZWUyMzJmMTk4Yjgy
ODM1MjY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9IVE1MU2hhZG93
RWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvSFRNTFNoYWRvd0Vs
ZW1lbnQuY3BwCkBAIC02MCwxNSArNjAsNiBAQCBjb25zdCBBdG9taWNTdHJpbmcmIEhUTUxTaGFk
b3dFbGVtZW50OjpzZWxlY3QoKSBjb25zdAogICAgICByZXR1cm4gbnVsbEF0b207CiB9CiAKLWJv
b2wgSFRNTFNoYWRvd0VsZW1lbnQ6OmRvZXNTZWxlY3RGcm9tSG9zdENoaWxkcmVuKCkgY29uc3QK
LXsKLSAgICBUcmVlU2NvcGUqIHNjb3BlID0gdHJlZVNjb3BlKCk7Ci0KLSAgICBpZiAoc2NvcGUt
PnJvb3ROb2RlKCktPmlzU2hhZG93Um9vdCgpKQotICAgICAgICByZXR1cm4gdG9TaGFkb3dSb290
KHNjb3BlLT5yb290Tm9kZSgpKS0+aXNPbGRlc3QoKTsKLSAgICByZXR1cm4gZmFsc2U7Ci19Ci0K
IE5vZGU6Okluc2VydGlvbk5vdGlmaWNhdGlvblJlcXVlc3QgSFRNTFNoYWRvd0VsZW1lbnQ6Omlu
c2VydGVkSW50byhDb250YWluZXJOb2RlKiBpbnNlcnRpb25Qb2ludCkKIHsKICAgICBJbnNlcnRp
b25Qb2ludDo6aW5zZXJ0ZWRJbnRvKGluc2VydGlvblBvaW50KTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvc2hhZG93L0hUTUxTaGFkb3dFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL3NoYWRvdy9IVE1MU2hhZG93RWxlbWVudC5oCmluZGV4IDExOWZhOWY5NWRlZjYyNzQx
NjJjYjE4ODk0OWZkNDcxYWFkYmZiODUuLjM2YmRkODk1YWMyZGVmYjNhNDA3ZjQwMWRkODkyM2U1
YTdkOWY5MDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L0hUTUxTaGFk
b3dFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvSFRNTFNoYWRvd0Vs
ZW1lbnQuaApAQCAtNDQsNyArNDQsNiBAQCBwdWJsaWM6CiAKICAgICBjb25zdCBBdG9taWNTdHJp
bmcmIHNlbGVjdCgpIGNvbnN0OwogICAgIGJvb2wgaXNTZWxlY3RWYWxpZCgpIGNvbnN0IE9WRVJS
SURFIHsgcmV0dXJuIHRydWU7IH0KLSAgICBib29sIGRvZXNTZWxlY3RGcm9tSG9zdENoaWxkcmVu
KCkgY29uc3Q7CiAKIHByb3RlY3RlZDoKICAgICB2aXJ0dWFsIEluc2VydGlvbk5vdGlmaWNhdGlv
blJlcXVlc3QgaW5zZXJ0ZWRJbnRvKENvbnRhaW5lck5vZGUqKSBPVkVSUklERTsKQEAgLTU2LDYg
KzU1LDE4IEBAIHByaXZhdGU6CiAgICAgYm9vbCBtX3JlZ2lzdGVyZWRXaXRoU2hhZG93Um9vdDsK
IH07CiAKK2lubGluZSBib29sIGlzSFRNTFNoYWRvd0VsZW1lbnQoY29uc3QgTm9kZSogbm9kZSkK
K3sKKyAgICBBU1NFUlQobm9kZSk7CisgICAgcmV0dXJuIG5vZGUtPmhhc1RhZ05hbWUoSFRNTE5h
bWVzOjpzaGFkb3dUYWcpOworfQorCitpbmxpbmUgSFRNTFNoYWRvd0VsZW1lbnQqIHRvSFRNTFNo
YWRvd0VsZW1lbnQoTm9kZSogbm9kZSkKK3sKKyAgICBBU1NFUlQoIW5vZGUgfHwgaXNIVE1MU2hh
ZG93RWxlbWVudChub2RlKSk7CisgICAgcmV0dXJuIHN0YXRpY19jYXN0PEhUTUxTaGFkb3dFbGVt
ZW50Kj4obm9kZSk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIEhU
TUxTaGFkb3dFbGVtZW50X2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93
L0luc2VydGlvblBvaW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9JbnNlcnRpb25Q
b2ludC5oCmluZGV4IDk1Zjc5OTVkN2UwOGQ1Mzg0NjU0YzliMjE1NWE1MmRiY2MwZjcxZTMuLmQy
NTlkOGY5OWE3MzE3ZTQxMzQ3NDg5OWI4M2QxZDgyZWEyNjQ2NGEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvc2hhZG93L0luc2VydGlvblBvaW50LmgKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9zaGFkb3cvSW5zZXJ0aW9uUG9pbnQuaApAQCAtNTMsNyArNTMsNiBAQCBwdWJsaWM6
CiAKICAgICB2aXJ0dWFsIGNvbnN0IEF0b21pY1N0cmluZyYgc2VsZWN0KCkgY29uc3QgPSAwOwog
ICAgIHZpcnR1YWwgYm9vbCBpc1NlbGVjdFZhbGlkKCkgY29uc3QgPSAwOwotICAgIHZpcnR1YWwg
Ym9vbCBkb2VzU2VsZWN0RnJvbUhvc3RDaGlsZHJlbigpIGNvbnN0ID0gMDsKIAogICAgIGJvb2wg
cmVzZXRTdHlsZUluaGVyaXRhbmNlKCkgY29uc3Q7CiAgICAgdm9pZCBzZXRSZXNldFN0eWxlSW5o
ZXJpdGFuY2UoYm9vbCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMmI4YjIxNmJhMzVkNjQ2NzU0OWYxM2JiNTVkYzM5ODkw
NmE1MmJlMS4uODQxZjRkNTI1OWNhZTI1YjgyNDNiYTE2YWQ1MDYxOGVhZGZlNzA5MCAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDE1IEBACisyMDEyLTEwLTIyICBTaGlueWEgS2F3YW5ha2EgIDxzaGlueWFrQGNo
cm9taXVtLm9yZz4KKworICAgICAgICBUaGUgb3JkZXIgb2YgcmVzb2x2aW5nIGRpc3RyaWJ1dGlv
biBpbiB0cmVlIGNvbXBvc2l0aW9uIGlzIHdyb25nLgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTk1NTIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBJdCB0dXJuZWQgb3V0IGEgbG90IG9mIHRlc3RzIHdlcmUg
d3JvbmcuCisKKyAgICAgICAgKiBmYXN0L2RvbS9zaGFkb3cvY29udGVudC1yZXByb2plY3Rpb24t
b3JkZXItZXhwZWN0ZWQuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vc2hhZG93L2Nv
bnRlbnQtcmVwcm9qZWN0aW9uLW9yZGVyLmh0bWw6IEFkZGVkLgorCiAyMDEyLTEwLTIyICBEaXJr
IFByYW5rZSAgPGRwcmFua2VAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIG1v
cmUgQ2hyb21pdW0gTUwgZXhwZWN0YXRpb24gdXBkYXRpbmcuCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L2RvbS9zaGFkb3cvY29udGVudC1yZXByb2plY3Rpb24tb3JkZXItZXhwZWN0ZWQu
aHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NoYWRvdy9jb250ZW50LXJlcHJvamVjdGlvbi1v
cmRlci1leHBlY3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmI1ZjhmYTNmOGFlMWMxMDU2YjYwNDU2YjY2
ZjI1OWMwYmYwNzU1MzIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9z
aGFkb3cvY29udGVudC1yZXByb2plY3Rpb24tb3JkZXItZXhwZWN0ZWQuaHRtbApAQCAtMCwwICsx
LDE0IEBACis8IURPQ1RZUEUgaHRtbD4KKworPGh0bWw+Cis8Ym9keT4KKworPGRpdiBpZD0iaG9z
dCI+CisgICAgPGRpdj5DPC9kaXY+PGhyPgorICAgIDxkaXY+QjwvZGl2Pjxocj4KKyAgICA8ZGl2
PjxkaXY+QTwvZGl2PjwvZGl2Pjxocj4KKyAgICA8ZGl2PkQ8L2Rpdj4KKzwvZGl2PgorCis8L2Jv
ZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9zaGFkb3cvY29u
dGVudC1yZXByb2plY3Rpb24tb3JkZXIuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NoYWRv
dy9jb250ZW50LXJlcHJvamVjdGlvbi1vcmRlci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmUyMzVjODkyNjhi
MTMxMzYzMzIzNzg3ZDE3NDNlOWE1OTc1OGEwZmUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L2RvbS9zaGFkb3cvY29udGVudC1yZXByb2plY3Rpb24tb3JkZXIuaHRtbApAQCAt
MCwwICsxLDI1IEBACis8IURPQ1RZUEUgaHRtbD4KKworPGh0bWw+Cis8Ym9keT4KKworPHNjcmlw
dCBzcmM9InJlc291cmNlcy9wb2x5ZmlsbC5qcyI+PC9zY3JpcHQ+CisKKzxkaXYgaWQ9Imhvc3Qi
PgorICAgIDxkaXYgY2xhc3M9ImEgYWIiPkE8L2Rpdj4KKyAgICA8ZGl2IGNsYXNzPSJiIGFiIj5C
PC9kaXY+CisgICAgPGRpdiBjbGFzcz0iYyI+QzwvZGl2PgorPC9kaXY+CisKKzxzY3JpcHQ+Cit2
YXIgc2hhZG93Um9vdCA9IG5ldyBXZWJLaXRTaGFkb3dSb290KGhvc3QpOworCitzaGFkb3dSb290
LmlubmVySFRNTCA9CisgICAgJzxzaGFkb3cgaWQ9ImlkMSI+PC9zaGFkb3c+PGhyPicgKyAKKyAg
ICAnPGNvbnRlbnQgaWQ9ImlkMiIgc2VsZWN0PSIuYiI+PC9jb250ZW50Pjxocj4nICsgCisgICAg
JzxkaXY+PGNvbnRlbnQgaWQ9ImlkMyIgc2VsZWN0PSIuYWIiPjwvY29udGVudD48L2Rpdj48aHI+
JyArCisgICAgJzxzaGFkb3cgaWQ9ImlkNCI+PGRpdj5EPC9kaXY+PC9zaGFkb3c+JworPC9zY3Jp
cHQ+CisKKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>170070</attachid>
            <date>2012-10-23 00:03:18 -0700</date>
            <delta_ts>2012-10-23 09:39:16 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-99552-20121023160155.patch</filename>
            <type>text/plain</type>
            <size>10570</size>
            <attacher name="Shinya Kawanaka">shinyak</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTMyMTgwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDMzMGEwNTk4NDYzMzdk
ZWUyZjI3OTg3NDgzNWNhNmI0NTM4ZTAwYS4uODVjYjlmMzM0NGM3Nzk2OTI3OTc3YTllNzNlODIw
MjJhMmYzMjViZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDEyLTEwLTIyICBTaGlu
eWEgS2F3YW5ha2EgIDxzaGlueWFrQGNocm9taXVtLm9yZz4KKworICAgICAgICBUaGUgb3JkZXIg
b2YgcmVzb2x2aW5nIGRpc3RyaWJ1dGlvbiBpbiB0cmVlIGNvbXBvc2l0aW9uIGlzIHdyb25nLgor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTk1NTIKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBY2NvcmRpbmcg
dG8gdGhlIGN1cnJlbnQgU2hhZG93RE9NIHNwZWMsIHdlIGhhdmUgdG8gcmVzb2x2ZSA8Y29udGVu
dD4gZmlyc3QsIHRoZW4gcmVzb2x2ZSA8c2hhZG93Pi4KKyAgICAgICAgSG93ZXZlciwgdGhlIG9y
ZGVyIG9mIHJlc29sdXRpb24gaXMgbm93IHRoZSBtaXhlZCB0cmVlIG9yZGVyIG9mIDxjb250ZW50
PiBhbmQgPHNoYWRvdz4uCisKKyAgICAgICAgVGVzdDogZmFzdC9kb20vc2hhZG93L2NvbnRlbnQt
cmVwcm9qZWN0aW9uLW9yZGVyLmh0bWwKKworICAgICAgICAqIGh0bWwvc2hhZG93L0NvbnRlbnRE
aXN0cmlidXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDb250ZW50RGlzdHJpYnV0b3I6OmRp
c3RyaWJ1dGUpOiBXZSBzaG91bGQgcmVzb2x2ZSA8Y29udGVudD4gYmVmb3JlIDxzaGFkb3c+Lgor
ICAgICAgICBPbmx5IHRoZSBmaXJzdCBhY3RpdmUgc2hhZG93IGluc2VydGlvbiBwb2ludCBjYW4g
c2VsZWN0IHRoZSByZXN0IG9mIGNvbnRlbnRzLgorICAgICAgICAqIGh0bWwvc2hhZG93L0hUTUxD
b250ZW50RWxlbWVudC5oOgorICAgICAgICAoSFRNTENvbnRlbnRFbGVtZW50KToKKyAgICAgICAg
KiBodG1sL3NoYWRvdy9IVE1MU2hhZG93RWxlbWVudC5jcHA6CisgICAgICAgICogaHRtbC9zaGFk
b3cvSFRNTFNoYWRvd0VsZW1lbnQuaDoKKyAgICAgICAgKFdlYkNvcmU6OmlzSFRNTFNoYWRvd0Vs
ZW1lbnQpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJDb3JlOjp0b0hUTUxTaGFk
b3dFbGVtZW50KToKKyAgICAgICAgKiBodG1sL3NoYWRvdy9JbnNlcnRpb25Qb2ludC5oOgorICAg
ICAgICAoSW5zZXJ0aW9uUG9pbnQpOiBXZSBkb24ndCBuZWVkIGRvZXNTZWxlY3RGcm9tSG9zdENo
aWxkcmVuKCkgYW55bW9yZS4KKwogMjAxMi0xMC0yMiAgSm9zaHVhIEJlbGwgIDxqc2JlbGxAY2hy
b21pdW0ub3JnPgogCiAgICAgICAgIEluZGV4ZWREQjogUmVtb3ZlIGN1c3RvbSBiaW5kaW5nIGNv
ZGUgZm9yIElEQkN1cnNvci52YWx1ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9z
aGFkb3cvQ29udGVudERpc3RyaWJ1dG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93
L0NvbnRlbnREaXN0cmlidXRvci5jcHAKaW5kZXggNjkyOWZkYzUwMmFkMDQ3YzRjOTU1ODI1ZTcw
OTU1YTU3OWMyODJiMS4uODNkZjVlMGMwNTFlNTM3ZDhlZmRmMzg3MzJkOTE3NjM5NzZmMzVlMSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvQ29udGVudERpc3RyaWJ1dG9y
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9Db250ZW50RGlzdHJpYnV0b3Iu
Y3BwCkBAIC0zMCw2ICszMCw3IEBACiAjaW5jbHVkZSAiQ29udGVudFNlbGVjdG9yUXVlcnkuaCIK
ICNpbmNsdWRlICJFbGVtZW50U2hhZG93LmgiCiAjaW5jbHVkZSAiSFRNTENvbnRlbnRFbGVtZW50
LmgiCisjaW5jbHVkZSAiSFRNTFNoYWRvd0VsZW1lbnQuaCIKICNpbmNsdWRlICJTaGFkb3dSb290
LmgiCiAKIApAQCAtNzYsNiArNzcsNyBAQCB2b2lkIENvbnRlbnREaXN0cmlidXRvcjo6ZGlzdHJp
YnV0ZShFbGVtZW50KiBob3N0KQogICAgIFZlY3Rvcjxib29sPiBkaXN0cmlidXRlZChwb29sLnNp
emUoKSk7CiAgICAgZGlzdHJpYnV0ZWQuZmlsbChmYWxzZSk7CiAKKyAgICBIVE1MU2hhZG93RWxl
bWVudCogZmlyc3RBY3RpdmVTaGFkb3dJbnNlcnRpb25Qb2ludEluT2xkZXN0U2hhZG93Um9vdCA9
IDA7CiAgICAgZm9yIChTaGFkb3dSb290KiByb290ID0gaG9zdC0+eW91bmdlc3RTaGFkb3dSb290
KCk7IHJvb3Q7IHJvb3QgPSByb290LT5vbGRlclNoYWRvd1Jvb3QoKSkgewogICAgICAgICBmb3Ig
KE5vZGUqIG5vZGUgPSByb290OyBub2RlOyBub2RlID0gbm9kZS0+dHJhdmVyc2VOZXh0Tm9kZShy
b290KSkgewogICAgICAgICAgICAgaWYgKCFpc0luc2VydGlvblBvaW50KG5vZGUpKQpAQCAtODMs
MTggKzg1LDI4IEBAIHZvaWQgQ29udGVudERpc3RyaWJ1dG9yOjpkaXN0cmlidXRlKEVsZW1lbnQq
IGhvc3QpCiAgICAgICAgICAgICBJbnNlcnRpb25Qb2ludCogcG9pbnQgPSB0b0luc2VydGlvblBv
aW50KG5vZGUpOwogICAgICAgICAgICAgaWYgKCFwb2ludC0+aXNBY3RpdmUoKSkKICAgICAgICAg
ICAgICAgICBjb250aW51ZTsKLSAgICAgICAgICAgIFNoYWRvd1Jvb3QqIG9sZGVyID0gcm9vdC0+
b2xkZXJTaGFkb3dSb290KCk7Ci0gICAgICAgICAgICBpZiAocG9pbnQtPmRvZXNTZWxlY3RGcm9t
SG9zdENoaWxkcmVuKCkpCisKKyAgICAgICAgICAgIGlmIChpc0hUTUxTaGFkb3dFbGVtZW50KG5v
ZGUpKSB7CisgICAgICAgICAgICAgICAgaWYgKHJvb3QtPm9sZGVyU2hhZG93Um9vdCgpKSB7Cisg
ICAgICAgICAgICAgICAgICAgIGlmICghcm9vdC0+b2xkZXJTaGFkb3dSb290KCktPmFzc2lnbmVk
VG8oKSkgeworICAgICAgICAgICAgICAgICAgICAgICAgZGlzdHJpYnV0ZU5vZGVDaGlsZHJlblRv
KHBvaW50LCByb290LT5vbGRlclNoYWRvd1Jvb3QoKSk7CisgICAgICAgICAgICAgICAgICAgICAg
ICByb290LT5vbGRlclNoYWRvd1Jvb3QoKS0+c2V0QXNzaWduZWRUbyhwb2ludCk7CisgICAgICAg
ICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKCFmaXJzdEFjdGl2ZVNo
YWRvd0luc2VydGlvblBvaW50SW5PbGRlc3RTaGFkb3dSb290KQorICAgICAgICAgICAgICAgICAg
ICBmaXJzdEFjdGl2ZVNoYWRvd0luc2VydGlvblBvaW50SW5PbGRlc3RTaGFkb3dSb290ID0gdG9I
VE1MU2hhZG93RWxlbWVudChub2RlKTsKKyAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAg
ICAgICAgZGlzdHJpYnV0ZVNlbGVjdGlvbnNUbyhwb2ludCwgcG9vbCwgZGlzdHJpYnV0ZWQpOwot
ICAgICAgICAgICAgZWxzZSBpZiAob2xkZXIgJiYgIW9sZGVyLT5hc3NpZ25lZFRvKCkpIHsKLSAg
ICAgICAgICAgICAgICBkaXN0cmlidXRlTm9kZUNoaWxkcmVuVG8ocG9pbnQsIG9sZGVyKTsKLSAg
ICAgICAgICAgICAgICBvbGRlci0+c2V0QXNzaWduZWRUbyhwb2ludCk7CisgICAgICAgICAgICAg
ICAgaWYgKEVsZW1lbnRTaGFkb3cqIHNoYWRvdyA9IG5vZGUtPnBhcmVudE5vZGUoKS0+aXNFbGVt
ZW50Tm9kZSgpID8gdG9FbGVtZW50KG5vZGUtPnBhcmVudE5vZGUoKSktPnNoYWRvdygpIDogMCkK
KyAgICAgICAgICAgICAgICAgICAgc2hhZG93LT5pbnZhbGlkYXRlRGlzdHJpYnV0aW9uKCk7CiAg
ICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIGlmIChFbGVtZW50U2hhZG93KiBzaGFkb3cgPSBu
b2RlLT5wYXJlbnROb2RlKCktPmlzRWxlbWVudE5vZGUoKSA/IHRvRWxlbWVudChub2RlLT5wYXJl
bnROb2RlKCkpLT5zaGFkb3coKSA6IDApCi0gICAgICAgICAgICAgICAgc2hhZG93LT5pbnZhbGlk
YXRlRGlzdHJpYnV0aW9uKCk7CiAgICAgICAgIH0KICAgICB9CisKKyAgICBpZiAoZmlyc3RBY3Rp
dmVTaGFkb3dJbnNlcnRpb25Qb2ludEluT2xkZXN0U2hhZG93Um9vdCkgeworICAgICAgICBkaXN0
cmlidXRlU2VsZWN0aW9uc1RvKGZpcnN0QWN0aXZlU2hhZG93SW5zZXJ0aW9uUG9pbnRJbk9sZGVz
dFNoYWRvd1Jvb3QsIHBvb2wsIGRpc3RyaWJ1dGVkKTsKKyAgICAgICAgaWYgKEVsZW1lbnRTaGFk
b3cqIHNoYWRvdyA9IGZpcnN0QWN0aXZlU2hhZG93SW5zZXJ0aW9uUG9pbnRJbk9sZGVzdFNoYWRv
d1Jvb3QtPnBhcmVudE5vZGUoKS0+aXNFbGVtZW50Tm9kZSgpID8gdG9FbGVtZW50KGZpcnN0QWN0
aXZlU2hhZG93SW5zZXJ0aW9uUG9pbnRJbk9sZGVzdFNoYWRvd1Jvb3QtPnBhcmVudE5vZGUoKSkt
PnNoYWRvdygpIDogMCkKKyAgICAgICAgICAgIHNoYWRvdy0+aW52YWxpZGF0ZURpc3RyaWJ1dGlv
bigpOworICAgIH0KIH0KIAogYm9vbCBDb250ZW50RGlzdHJpYnV0b3I6OmludmFsaWRhdGUoRWxl
bWVudCogaG9zdCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L0hUTUxD
b250ZW50RWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvSFRNTENvbnRlbnRF
bGVtZW50LmgKaW5kZXggZWE3ZmI4OWE1NjBjZWY4NmE2MzA1ZDk5ZTMxNWNkYzlhNzhiYzNhMy4u
NzU0Nzk5MzA2MjU3M2NlNzMwNTZjZWM1Mzc1MGNkNDMzYjQ1YmRjYyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvSFRNTENvbnRlbnRFbGVtZW50LmgKKysrIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9zaGFkb3cvSFRNTENvbnRlbnRFbGVtZW50LmgKQEAgLTQ4LDggKzQ4LDYg
QEAgcHVibGljOgogICAgIHZvaWQgc2V0U2VsZWN0KGNvbnN0IEF0b21pY1N0cmluZyYpOwogICAg
IHZpcnR1YWwgYm9vbCBpc1NlbGVjdFZhbGlkKCkgY29uc3Q7CiAKLSAgICBib29sIGRvZXNTZWxl
Y3RGcm9tSG9zdENoaWxkcmVuKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQotCiBwcm90ZWN0ZWQ6
CiAgICAgSFRNTENvbnRlbnRFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCop
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9IVE1MU2hhZG93RWxl
bWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9IVE1MU2hhZG93RWxlbWVudC5j
cHAKaW5kZXggNWM1ZGJlOTRmZmU0NDZlNmZlMGI2M2Y2ZDBlN2ViNjNlNjQ5M2UxNC4uN2Q3ZTQx
NTI5ZmJkZjE2ZjEzMDQwOGVlMjMyZjE5OGI4MjgzNTI2NCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaHRtbC9zaGFkb3cvSFRNTFNoYWRvd0VsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvc2hhZG93L0hUTUxTaGFkb3dFbGVtZW50LmNwcApAQCAtNjAsMTUgKzYwLDYgQEAg
Y29uc3QgQXRvbWljU3RyaW5nJiBIVE1MU2hhZG93RWxlbWVudDo6c2VsZWN0KCkgY29uc3QKICAg
ICAgcmV0dXJuIG51bGxBdG9tOwogfQogCi1ib29sIEhUTUxTaGFkb3dFbGVtZW50Ojpkb2VzU2Vs
ZWN0RnJvbUhvc3RDaGlsZHJlbigpIGNvbnN0Ci17Ci0gICAgVHJlZVNjb3BlKiBzY29wZSA9IHRy
ZWVTY29wZSgpOwotCi0gICAgaWYgKHNjb3BlLT5yb290Tm9kZSgpLT5pc1NoYWRvd1Jvb3QoKSkK
LSAgICAgICAgcmV0dXJuIHRvU2hhZG93Um9vdChzY29wZS0+cm9vdE5vZGUoKSktPmlzT2xkZXN0
KCk7Ci0gICAgcmV0dXJuIGZhbHNlOwotfQotCiBOb2RlOjpJbnNlcnRpb25Ob3RpZmljYXRpb25S
ZXF1ZXN0IEhUTUxTaGFkb3dFbGVtZW50OjppbnNlcnRlZEludG8oQ29udGFpbmVyTm9kZSogaW5z
ZXJ0aW9uUG9pbnQpCiB7CiAgICAgSW5zZXJ0aW9uUG9pbnQ6Omluc2VydGVkSW50byhpbnNlcnRp
b25Qb2ludCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9IVE1MU2hh
ZG93RWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvSFRNTFNoYWRvd0VsZW1l
bnQuaAppbmRleCAxMTlmYTlmOTVkZWY2Mjc0MTYyY2IxODg5NDlmZDQ3MWFhZGJmYjg1Li4zNmJk
ZDg5NWFjMmRlZmIzYTQwN2Y0MDFkZDg5MjNlNWE3ZDlmOTA0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL3NoYWRvdy9IVE1MU2hhZG93RWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvc2hhZG93L0hUTUxTaGFkb3dFbGVtZW50LmgKQEAgLTQ0LDcgKzQ0LDYgQEAgcHVi
bGljOgogCiAgICAgY29uc3QgQXRvbWljU3RyaW5nJiBzZWxlY3QoKSBjb25zdDsKICAgICBib29s
IGlzU2VsZWN0VmFsaWQoKSBjb25zdCBPVkVSUklERSB7IHJldHVybiB0cnVlOyB9Ci0gICAgYm9v
bCBkb2VzU2VsZWN0RnJvbUhvc3RDaGlsZHJlbigpIGNvbnN0OwogCiBwcm90ZWN0ZWQ6CiAgICAg
dmlydHVhbCBJbnNlcnRpb25Ob3RpZmljYXRpb25SZXF1ZXN0IGluc2VydGVkSW50byhDb250YWlu
ZXJOb2RlKikgT1ZFUlJJREU7CkBAIC01Niw2ICs1NSwxOCBAQCBwcml2YXRlOgogICAgIGJvb2wg
bV9yZWdpc3RlcmVkV2l0aFNoYWRvd1Jvb3Q7CiB9OwogCitpbmxpbmUgYm9vbCBpc0hUTUxTaGFk
b3dFbGVtZW50KGNvbnN0IE5vZGUqIG5vZGUpCit7CisgICAgQVNTRVJUKG5vZGUpOworICAgIHJl
dHVybiBub2RlLT5oYXNUYWdOYW1lKEhUTUxOYW1lczo6c2hhZG93VGFnKTsKK30KKworaW5saW5l
IEhUTUxTaGFkb3dFbGVtZW50KiB0b0hUTUxTaGFkb3dFbGVtZW50KE5vZGUqIG5vZGUpCit7Cisg
ICAgQVNTRVJUKCFub2RlIHx8IGlzSFRNTFNoYWRvd0VsZW1lbnQobm9kZSkpOworICAgIHJldHVy
biBzdGF0aWNfY2FzdDxIVE1MU2hhZG93RWxlbWVudCo+KG5vZGUpOworfQorCiB9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCiAKICNlbmRpZiAvLyBIVE1MU2hhZG93RWxlbWVudF9oCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9JbnNlcnRpb25Qb2ludC5oIGIvU291cmNlL1dl
YkNvcmUvaHRtbC9zaGFkb3cvSW5zZXJ0aW9uUG9pbnQuaAppbmRleCBhZWY5ODEzZjUwMDFhMzEy
ZjU1MzA0Mzc0YzAwNTE0NzNlNjczYTZhLi40MzA0MTVmN2I2MjZjMjk4OWJhYTM3NmVjMTBmNDRm
ZjU3Yjk5OGFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9JbnNlcnRp
b25Qb2ludC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L0luc2VydGlvblBvaW50
LmgKQEAgLTUzLDcgKzUzLDYgQEAgcHVibGljOgogCiAgICAgdmlydHVhbCBjb25zdCBBdG9taWNT
dHJpbmcmIHNlbGVjdCgpIGNvbnN0ID0gMDsKICAgICB2aXJ0dWFsIGJvb2wgaXNTZWxlY3RWYWxp
ZCgpIGNvbnN0ID0gMDsKLSAgICB2aXJ0dWFsIGJvb2wgZG9lc1NlbGVjdEZyb21Ib3N0Q2hpbGRy
ZW4oKSBjb25zdCA9IDA7CiAKICAgICBib29sIHJlc2V0U3R5bGVJbmhlcml0YW5jZSgpIGNvbnN0
OwogICAgIHZvaWQgc2V0UmVzZXRTdHlsZUluaGVyaXRhbmNlKGJvb2wpOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGVkZmUw
N2Q2NDQ3MzJkMTFkNDgxMTc0YWNhZDEyM2UxMWFiYmU3MWMuLjIyZGU3MWZmMTYzZWJmM2IwZDQ3
ZDU2NzIyN2VmYWVmYWZkNGYxY2QgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZwor
KysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxMi0xMC0yMiAg
U2hpbnlhIEthd2FuYWthICA8c2hpbnlha0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgVGhlIG9y
ZGVyIG9mIHJlc29sdmluZyBkaXN0cmlidXRpb24gaW4gdHJlZSBjb21wb3NpdGlvbiBpcyB3cm9u
Zy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk5NTUy
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2UgYWxz
byBmaXggdGhlIGV4aXN0aW5nIHdyb25nIHRlc3QuCisKKyAgICAgICAgKiBmYXN0L2RvbS9zaGFk
b3cvY29udGVudC1yZXByb2plY3Rpb24tb3JkZXItZXhwZWN0ZWQuaHRtbDogQWRkZWQuCisgICAg
ICAgICogZmFzdC9kb20vc2hhZG93L2NvbnRlbnQtcmVwcm9qZWN0aW9uLW9yZGVyLmh0bWw6IEFk
ZGVkLgorICAgICAgICAqIGZhc3QvZG9tL3NoYWRvdy9zaGFkb3ctZWxlbWVudC1yZW5kZXJpbmct
c2luZ2xlLmh0bWw6CisKIDIwMTItMTAtMjIgIEthbmdpbCBIYW4gIDxrYW5naWwuaGFuQHNhbXN1
bmcuY29tPgogCiAgICAgICAgIFtFRkxdIFNraXAgZmFzdC9ldmVudHMvdGFiaW5kZXgtZm9jdXMt
Ymx1ci1hbGwuaHRtbCBjYXNlLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hh
ZG93L2NvbnRlbnQtcmVwcm9qZWN0aW9uLW9yZGVyLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9zaGFkb3cvY29udGVudC1yZXByb2plY3Rpb24tb3JkZXItZXhwZWN0ZWQuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi5iNWY4ZmEzZjhhZTFjMTA1NmI2MDQ1NmI2NmYyNTljMGJmMDc1NTMyCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hhZG93L2NvbnRlbnQtcmVw
cm9qZWN0aW9uLW9yZGVyLWV4cGVjdGVkLmh0bWwKQEAgLTAsMCArMSwxNCBAQAorPCFET0NUWVBF
IGh0bWw+CisKKzxodG1sPgorPGJvZHk+CisKKzxkaXYgaWQ9Imhvc3QiPgorICAgIDxkaXY+Qzwv
ZGl2Pjxocj4KKyAgICA8ZGl2PkI8L2Rpdj48aHI+CisgICAgPGRpdj48ZGl2PkE8L2Rpdj48L2Rp
dj48aHI+CisgICAgPGRpdj5EPC9kaXY+Cis8L2Rpdj4KKworPC9ib2R5PgorPC9odG1sPgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hhZG93L2NvbnRlbnQtcmVwcm9qZWN0aW9u
LW9yZGVyLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9zaGFkb3cvY29udGVudC1yZXByb2pl
Y3Rpb24tb3JkZXIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lMjM1Yzg5MjY4YjEzMTM2MzMyMzc4N2QxNzQz
ZTlhNTk3NThhMGZlCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hh
ZG93L2NvbnRlbnQtcmVwcm9qZWN0aW9uLW9yZGVyLmh0bWwKQEAgLTAsMCArMSwyNSBAQAorPCFE
T0NUWVBFIGh0bWw+CisKKzxodG1sPgorPGJvZHk+CisKKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMv
cG9seWZpbGwuanMiPjwvc2NyaXB0PgorCis8ZGl2IGlkPSJob3N0Ij4KKyAgICA8ZGl2IGNsYXNz
PSJhIGFiIj5BPC9kaXY+CisgICAgPGRpdiBjbGFzcz0iYiBhYiI+QjwvZGl2PgorICAgIDxkaXYg
Y2xhc3M9ImMiPkM8L2Rpdj4KKzwvZGl2PgorCis8c2NyaXB0PgordmFyIHNoYWRvd1Jvb3QgPSBu
ZXcgV2ViS2l0U2hhZG93Um9vdChob3N0KTsKKworc2hhZG93Um9vdC5pbm5lckhUTUwgPQorICAg
ICc8c2hhZG93IGlkPSJpZDEiPjwvc2hhZG93Pjxocj4nICsgCisgICAgJzxjb250ZW50IGlkPSJp
ZDIiIHNlbGVjdD0iLmIiPjwvY29udGVudD48aHI+JyArIAorICAgICc8ZGl2Pjxjb250ZW50IGlk
PSJpZDMiIHNlbGVjdD0iLmFiIj48L2NvbnRlbnQ+PC9kaXY+PGhyPicgKworICAgICc8c2hhZG93
IGlkPSJpZDQiPjxkaXY+RDwvZGl2Pjwvc2hhZG93PicKKzwvc2NyaXB0PgorCis8L2JvZHk+Cis8
L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9zaGFkb3cvc2hhZG93LWVs
ZW1lbnQtcmVuZGVyaW5nLXNpbmdsZS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hhZG93
L3NoYWRvdy1lbGVtZW50LXJlbmRlcmluZy1zaW5nbGUuaHRtbAppbmRleCBlMmRhNzBjNmQwYTY4
MDk2MTdkOTBjMDEwODA5MWUyZThkZjNlOTU1Li42Yjg4YmJlNTk2MzJlM2Q3YWY1NzI5NGVkOTVm
ZmQzMzRkNTUwZjQ1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9zaGFkb3cvc2hh
ZG93LWVsZW1lbnQtcmVuZGVyaW5nLXNpbmdsZS5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qv
ZG9tL3NoYWRvdy9zaGFkb3ctZWxlbWVudC1yZW5kZXJpbmctc2luZ2xlLmh0bWwKQEAgLTkyLDcg
KzkyLDcgQEAgdGVzdEZ1bmNzLnB1c2goZnVuY3Rpb24gcmVuZGVyaW5nTWl4ZWRPZkZhbGxiYWNr
QW5kTm9uRmFsbGJhY2soY2FsbElmRG9uZSkgewogCiB0ZXN0RnVuY3MucHVzaChmdW5jdGlvbiBy
ZW5kZXJpbmdTaGFkb3dSb290QmVmb3JlQ29udGVudChjYWxsSWZEb25lKSB7CiAgICAgZG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoJ2V4cGVjdC1jb250YWluZXInKS5pbm5lckhUTUwgPQotICAgICAg
ICAiPGRpdj48c3Bhbj5CRUZPUkU8L3NwYW4+PHNwYW4+TUlEPC9zcGFuPjxzcGFuPk0gMTwvc3Bh
bj48c3Bhbj5DT05URU5UIEZBTExCQUNLPC9zcGFuPjxzcGFuPk0gMjwvc3Bhbj48c3Bhbj5BRlRF
Ujwvc3Bhbj48L2Rpdj4iOworICAgICAgICAiPGRpdj48c3Bhbj5CRUZPUkU8L3NwYW4+PHNwYW4+
U0hBRE9XIEZBTExCQUNLPC9zcGFuPjxzcGFuPk0gMTwvc3Bhbj48c3Bhbj5NSUQ8L3NwYW4+PHNw
YW4+TSAyPC9zcGFuPjxzcGFuPkFGVEVSPC9zcGFuPjwvZGl2PiI7CiAKICAgICB2YXIgcm9vdCA9
IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOwogICAgIHJvb3QuYXBwZW5kQ2hpbGQoY3Jl
YXRlU3BhbldpdGhUZXh0KCdNSUQnKSk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>