<?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>58073</bug_id>
          
          <creation_ts>2011-04-07 13:21:25 -0700</creation_ts>
          <short_desc>Presence of shadow DOM should suppress rendering of ordinary child nodes</short_desc>
          <delta_ts>2011-04-14 18:06:11 -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>PC</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>
          
          <blocked>52962</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Dominic Cooney">dominicc</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dglazkov</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>381622</commentid>
    <comment_count>0</comment_count>
      <attachid>88680</attachid>
    <who name="Dominic Cooney">dominicc</who>
    <bug_when>2011-04-07 13:21:25 -0700</bug_when>
    <thetext>Created attachment 88680
Should just see keygen select (shadow), but &quot;Hello world&quot; also appears.

When an element has both ordinary children and shadow children, both appear. The presence of shadow children should suppress the rendering of ordinary children.

Repro&apos;d in WK nightly: Version 5.0.4 (6533.20.27, r83161)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>385234</commentid>
    <comment_count>1</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-04-13 14:27:51 -0700</bug_when>
    <thetext>(In reply to comment #0)
&gt; Created an attachment (id=88680) [details]
&gt; Should just see keygen select (shadow), but &quot;Hello world&quot; also appears.
&gt; 
&gt; When an element has both ordinary children and shadow children, both appear. The presence of shadow children should suppress the rendering of ordinary children.
&gt; 
&gt; Repro&apos;d in WK nightly: Version 5.0.4 (6533.20.27, r83161)

The reduction is wrong (the parser is smart enough to move the text out to be a child of body), but the problem is still present. Fix coming up...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>385261</commentid>
    <comment_count>2</comment_count>
      <attachid>89466</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-04-13 14:47:32 -0700</bug_when>
    <thetext>Created attachment 89466
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>385276</commentid>
    <comment_count>3</comment_count>
      <attachid>89466</attachid>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2011-04-13 15:02:28 -0700</bug_when>
    <thetext>Comment on attachment 89466
Patch

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

&gt; Source/WebCore/dom/Node.cpp:855
&gt; +inline static ContainerNode* shadowRoot(Node* node)

I don&apos;t think this inline is really needed. We should reserve inline for cases where we can actually show an improvement, no? But I&apos;m a n00b so feel free to ignore this. :)

&gt; Source/WebCore/dom/Node.cpp:1460
&gt; +inline static bool shouldCreateRendererFor(Node* node, ContainerNode* parentForRenderingAndStyle)

ditto re: inline</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>385286</commentid>
    <comment_count>4</comment_count>
      <attachid>89475</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-04-13 15:11:49 -0700</bug_when>
    <thetext>Created attachment 89475
Better patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>386243</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-04-14 18:03:35 -0700</bug_when>
    <thetext>The commit-queue encountered the following flaky tests while processing attachment 89475:

animations/suspend-resume-animation.html bug 48161 (author: cmarrin@apple.com)
The commit-queue is continuing to process your patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>386245</commentid>
    <comment_count>6</comment_count>
      <attachid>89475</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-04-14 18:06:06 -0700</bug_when>
    <thetext>Comment on attachment 89475
Better patch.

Clearing flags on attachment: 89475

Committed r83922: &lt;http://trac.webkit.org/changeset/83922&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>386246</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-04-14 18:06:11 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>88680</attachid>
            <date>2011-04-07 13:21:25 -0700</date>
            <delta_ts>2011-04-07 13:21:25 -0700</delta_ts>
            <desc>Should just see keygen select (shadow), but &quot;Hello world&quot; also appears.</desc>
            <filename>children.html</filename>
            <type>text/html</type>
            <size>33</size>
            <attacher name="Dominic Cooney">dominicc</attacher>
            
              <data encoding="base64">PGtleWdlbj4KSGVsbG8sIHdvcmxkIQo8L2tleWdlbj4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>89466</attachid>
            <date>2011-04-13 14:47:32 -0700</date>
            <delta_ts>2011-04-13 15:11:46 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-58073-20110413144731.patch</filename>
            <type>text/plain</type>
            <size>6065</size>
            <attacher name="Dimitri Glazkov (Google)">dglazkov</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODM3NDUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA2NmM4YjNkN2ZiOTE4Zjg4MDUxMWNk
MGRmYjEyN2Q2MWIxYzlmMGE1Li43NGViNzIwZDk5YTRlMzZiMThjZmY3N2NlZjk4NTRhMDFlYTUw
ZWIyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTEtMDQtMTMgIERpbWl0cmkgR2xhemtvdiAg
PGRnbGF6a292QGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBQcmVzZW5jZSBvZiBzaGFkb3cgRE9NIHNob3VsZCBzdXBwcmVzcyBy
ZW5kZXJpbmcgb2Ygb3JkaW5hcnkgY2hpbGQgbm9kZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU4MDczCisKKyAgICAgICAgKiBmYXN0L2RvbS9zaGFk
b3cvbm8tcmVuZGVyZXJzLWZvci1saWdodC1jaGlsZHJlbi1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIGZhc3QvZG9tL3NoYWRvdy9uby1yZW5kZXJlcnMtZm9yLWxpZ2h0LWNoaWxkcmVu
Lmh0bWw6IEFkZGVkLgorCiAyMDExLTA0LTEzICBQaGlsaXBwZSBOb3JtYW5kICA8cG5vcm1hbmRA
aWdhbGlhLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLCBHVEsgcGxhdGZvcm0gcmVzdWx0cyBm
b3IgZnVsbC1zY3JlZW4tekluZGV4Lmh0bWwgdGVzdC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3QvZG9tL3NoYWRvdy9uby1yZW5kZXJlcnMtZm9yLWxpZ2h0LWNoaWxkcmVuLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NoYWRvdy9uby1yZW5kZXJlcnMtZm9yLWxpZ2h0
LWNoaWxkcmVuLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yOTdiMmVmNTdiYjgxYjg3ODQxMDU1
YTMwMDg4MTA0NDhlYzBjMDBhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9k
b20vc2hhZG93L25vLXJlbmRlcmVycy1mb3ItbGlnaHQtY2hpbGRyZW4tZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsMyBAQAorQ2hpbGRyZW4gb2YgYW4gZWxlbWVudCBhcmUgbmV2ZXIgcmVuZGVyZWQg
aXMgaXQgaGFzIGEgc2hhZG93IERPTSBzdWJ0cmVlLgorU2hvdWxkIG5vdCBzZWUgdGhlIHdvcmQg
RkFJTCBiZWxvdy4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hhZG93L25v
LXJlbmRlcmVycy1mb3ItbGlnaHQtY2hpbGRyZW4uaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZG9t
L3NoYWRvdy9uby1yZW5kZXJlcnMtZm9yLWxpZ2h0LWNoaWxkcmVuLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
Y2U1NjhlODk2OTBmMmUyM2U0NTU2ZDNjMzRhYzMzMjBhMGZjZjYxNAotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NoYWRvdy9uby1yZW5kZXJlcnMtZm9yLWxpZ2h0LWNo
aWxkcmVuLmh0bWwKQEAgLTAsMCArMSwyMCBAQAorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CisK
K2lmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgbGF5b3V0VGVzdENvbnRyb2xs
ZXIuZHVtcEFzVGV4dCgpOworCit3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIGZ1bmN0
aW9uKCkKK3sKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgna2V5Z2VuJylbMF0u
YXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoJ0ZBSUwnKSk7Cit9LCBmYWxzZSk7
CisKKzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+CitDaGlsZHJlbiBvZiBhbiBlbGVtZW50IGFy
ZSBuZXZlciByZW5kZXJlZCBpcyBpdCBoYXMgYSBzaGFkb3cgRE9NIHN1YnRyZWUuPGJyPgorU2hv
dWxkIG5vdCBzZWUgdGhlIHdvcmQgRkFJTCBiZWxvdy48YnI+Cis8a2V5Z2VuPjwva2V5Z2VuPgor
PC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRl
eCAwNThmNDBkNjVmZTQ5ZGMwYWQwMDBjNjE5YjVhYjE3NmJhYjNhNDYyLi5lMjE2ZmI0NzM0Yzll
NTEwOTBmODU2YTBjNjI4ODUxMzE5YmUyMjhmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAK
KzIwMTEtMDQtMTMgIERpbWl0cmkgR2xhemtvdiAgPGRnbGF6a292QGNocm9taXVtLm9yZz4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBQcmVzZW5jZSBv
ZiBzaGFkb3cgRE9NIHNob3VsZCBzdXBwcmVzcyByZW5kZXJpbmcgb2Ygb3JkaW5hcnkgY2hpbGQg
bm9kZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU4
MDczCisKKyAgICAgICAgVGVzdDogZmFzdC9kb20vc2hhZG93L25vLXJlbmRlcmVycy1mb3ItbGln
aHQtY2hpbGRyZW4uaHRtbAorCisgICAgICAgICogZG9tL05vZGUuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6c2hhZG93Um9vdCk6IEFkZGVkIGEgaGVscGVyIGZ1bmN0aW9uLgorICAgICAgICAoV2Vi
Q29yZTo6Tm9kZTo6c2V0RG9jdW1lbnRSZWN1cnNpdmVseSk6IENoYW5nZWQgdG8gdXNlIHRoZSBo
ZWxwZXIuCisgICAgICAgIChXZWJDb3JlOjpzaG91bGRDcmVhdGVSZW5kZXJlckZvcik6IEV4cGFu
ZGVkIGEgbG9uZyBjb25kaXRpb24gY2hlY2sgaW50byBhIGhlbHBlciBmdW5jdGlvbiwKKyAgICAg
ICAgICAgIGFkZGVkIGEgY2hlY2sgZm9yIGNoaWxkcmVuIG9mIGFuIGVsZW1lbnQgd2l0aCBhIHNo
YWRvdyBET00uCisgICAgICAgIChXZWJDb3JlOjpOb2RlOjpjcmVhdGVSZW5kZXJlckFuZFN0eWxl
KTogQ2hhbmdlZCB0byB1c2UgdGhlIGhlbHBlci4KKwogMjAxMS0wNC0xMyAgVGhpZXJyeSBSZWRp
bmcgIDx0aGllcnJ5LnJlZGluZ0BhdmlvbmljLWRlc2lnbi5kZT4KIAogICAgICAgICBHdGsrIHBv
cnQgZmFpbHMgdG8gYnVpbGQgd2hlbiBlbmFibGluZyBXZWJHTApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvZG9tL05vZGUuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL05vZGUuY3BwCmluZGV4
IGZlNWJiNzQ4MGY2MjNlZDlkNGFiZTUxMTEyZTc0MTk5ZjE4ZjNkZjMuLjcyNzk4N2ZmNDNmZDY2
NjIwMTUwZTExZjJhNDhjNmE1NDAyNzNmN2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9Ob2RlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZS5jcHAKQEAgLTg1Miw2ICs4
NTIsMTEgQEAgYm9vbCBOb2RlOjpoYXNOb25FbXB0eUJvdW5kaW5nQm94KCkgY29uc3QKICAgICBy
ZXR1cm4gZmFsc2U7CiB9CiAKK2lubGluZSBzdGF0aWMgQ29udGFpbmVyTm9kZSogc2hhZG93Um9v
dChOb2RlKiBub2RlKQoreworICAgIHJldHVybiBub2RlLT5pc0VsZW1lbnROb2RlKCkgPyB0b0Vs
ZW1lbnQobm9kZSktPnNoYWRvd1Jvb3QoKSA6IDA7Cit9CisKIHZvaWQgTm9kZTo6c2V0RG9jdW1l
bnRSZWN1cnNpdmVseShEb2N1bWVudCogbmV3RG9jdW1lbnQpCiB7CiAgICAgQVNTRVJUKGRvY3Vt
ZW50KCkgIT0gbmV3RG9jdW1lbnQpOwpAQCAtODYwLDcgKzg2NSw3IEBAIHZvaWQgTm9kZTo6c2V0
RG9jdW1lbnRSZWN1cnNpdmVseShEb2N1bWVudCogbmV3RG9jdW1lbnQpCiAgICAgICAgIG5vZGUt
PnNldERvY3VtZW50KG5ld0RvY3VtZW50KTsKICAgICAgICAgaWYgKCFub2RlLT5pc0VsZW1lbnRO
b2RlKCkpCiAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgaWYgKE5vZGUqIHNoYWRvdyA9
IHRvRWxlbWVudChub2RlKS0+c2hhZG93Um9vdCgpKQorICAgICAgICBpZiAoTm9kZSogc2hhZG93
ID0gc2hhZG93Um9vdChub2RlKSkKICAgICAgICAgICAgIHNoYWRvdy0+c2V0RG9jdW1lbnRSZWN1
cnNpdmVseShuZXdEb2N1bWVudCk7CiAgICAgfQogfQpAQCAtMTQ1Miw2ICsxNDU3LDI4IEBAIENv
bnRhaW5lck5vZGUqIE5vZGU6OnBhcmVudE5vZGVGb3JSZW5kZXJpbmdBbmRTdHlsZSgpIGNvbnN0
CiAgICAgcmV0dXJuIHBhcmVudCAmJiBwYXJlbnQtPmlzU2hhZG93Qm91bmRhcnkoKSA/IHBhcmVu
dC0+c2hhZG93SG9zdCgpIDogcGFyZW50OwogfQogCitpbmxpbmUgc3RhdGljIGJvb2wgc2hvdWxk
Q3JlYXRlUmVuZGVyZXJGb3IoTm9kZSogbm9kZSwgQ29udGFpbmVyTm9kZSogcGFyZW50Rm9yUmVu
ZGVyaW5nQW5kU3R5bGUpCit7CisgICAgUmVuZGVyT2JqZWN0KiBwYXJlbnRSZW5kZXJlciA9IHBh
cmVudEZvclJlbmRlcmluZ0FuZFN0eWxlLT5yZW5kZXJlcigpOworICAgIGlmICghcGFyZW50UmVu
ZGVyZXIpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIGJvb2wgYXRTaGFkb3dCb3VuZGFy
eSA9IG5vZGUtPnBhcmVudE9ySG9zdE5vZGUoKS0+aXNTaGFkb3dCb3VuZGFyeSgpOworCisgICAg
Ly8gRklYTUU6IElnbm9yaW5nIGNhbkhhdmVDaGlsZHJlbigpIGluIGEgY2FzZSBvZiBpc1NoYWRv
d1Jvb3QoKSBtaWdodCBiZSB3cm9uZy4KKyAgICAvLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTUyNDIzCisgICAgaWYgKCFwYXJlbnRSZW5kZXJlci0+Y2FuSGF2
ZUNoaWxkcmVuKCkgJiYgIShub2RlLT5pc1NoYWRvd1Jvb3QoKSB8fCBhdFNoYWRvd0JvdW5kYXJ5
KSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgaWYgKHNoYWRvd1Jvb3QocGFyZW50Rm9y
UmVuZGVyaW5nQW5kU3R5bGUpICYmICFhdFNoYWRvd0JvdW5kYXJ5KQorICAgICAgICByZXR1cm4g
ZmFsc2U7CisKKyAgICBpZiAoIXBhcmVudEZvclJlbmRlcmluZ0FuZFN0eWxlLT5jaGlsZFNob3Vs
ZENyZWF0ZVJlbmRlcmVyKG5vZGUpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICByZXR1
cm4gdHJ1ZTsKK30KKwogUmVuZGVyT2JqZWN0KiBOb2RlOjpjcmVhdGVSZW5kZXJlckFuZFN0eWxl
KCkKIHsKICAgICBBU1NFUlQoIXJlbmRlcmVyKCkpOwpAQCAtMTQ2MCwxMSArMTQ4Nyw3IEBAIFJl
bmRlck9iamVjdCogTm9kZTo6Y3JlYXRlUmVuZGVyZXJBbmRTdHlsZSgpCiAgICAgQ29udGFpbmVy
Tm9kZSogcGFyZW50ID0gcGFyZW50Tm9kZUZvclJlbmRlcmluZ0FuZFN0eWxlKCk7CiAgICAgQVNT
RVJUKHBhcmVudCk7CiAKLSAgICBSZW5kZXJPYmplY3QqIHBhcmVudFJlbmRlcmVyID0gcGFyZW50
LT5yZW5kZXJlcigpOwotCi0gICAgLy8gRklYTUU6IElnbm9yaW5nIGNhbkhhdmVDaGlsZHJlbigp
IGluIGEgY2FzZSBvZiBpc1NoYWRvd1Jvb3QoKSBtaWdodCBiZSB3cm9uZy4KLSAgICAvLyBTZWUg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyNDIzCi0gICAgaWYgKCFw
YXJlbnRSZW5kZXJlciB8fCAoIXBhcmVudFJlbmRlcmVyLT5jYW5IYXZlQ2hpbGRyZW4oKSAmJiAh
KGlzU2hhZG93Um9vdCgpIHx8IHBhcmVudE5vZGUoKS0+aXNTaGFkb3dCb3VuZGFyeSgpKSkgfHwg
IXBhcmVudC0+Y2hpbGRTaG91bGRDcmVhdGVSZW5kZXJlcih0aGlzKSkKKyAgICBpZiAoIXNob3Vs
ZENyZWF0ZVJlbmRlcmVyRm9yKHRoaXMsIHBhcmVudCkpCiAgICAgICAgIHJldHVybiAwOwogCiAg
ICAgUmVmUHRyPFJlbmRlclN0eWxlPiBzdHlsZSA9IHN0eWxlRm9yUmVuZGVyZXIoKTsKQEAgLTE0
NzUsNyArMTQ5OCw3IEBAIFJlbmRlck9iamVjdCogTm9kZTo6Y3JlYXRlUmVuZGVyZXJBbmRTdHls
ZSgpCiAgICAgaWYgKCFuZXdSZW5kZXJlcikKICAgICAgICAgcmV0dXJuIDA7CiAKLSAgICBpZiAo
IXBhcmVudFJlbmRlcmVyLT5pc0NoaWxkQWxsb3dlZChuZXdSZW5kZXJlciwgc3R5bGUuZ2V0KCkp
KSB7CisgICAgaWYgKCFwYXJlbnQtPnJlbmRlcmVyKCktPmlzQ2hpbGRBbGxvd2VkKG5ld1JlbmRl
cmVyLCBzdHlsZS5nZXQoKSkpIHsKICAgICAgICAgbmV3UmVuZGVyZXItPmRlc3Ryb3koKTsKICAg
ICAgICAgcmV0dXJuIDA7CiAgICAgfQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>89475</attachid>
            <date>2011-04-13 15:11:49 -0700</date>
            <delta_ts>2011-04-14 18:06:06 -0700</delta_ts>
            <desc>Better patch.</desc>
            <filename>bug-58073-20110413151148.patch</filename>
            <type>text/plain</type>
            <size>6058</size>
            <attacher name="Dimitri Glazkov (Google)">dglazkov</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODM3NDUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA2NmM4YjNkN2ZiOTE4Zjg4MDUxMWNk
MGRmYjEyN2Q2MWIxYzlmMGE1Li43NGViNzIwZDk5YTRlMzZiMThjZmY3N2NlZjk4NTRhMDFlYTUw
ZWIyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTEtMDQtMTMgIERpbWl0cmkgR2xhemtvdiAg
PGRnbGF6a292QGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBQcmVzZW5jZSBvZiBzaGFkb3cgRE9NIHNob3VsZCBzdXBwcmVzcyBy
ZW5kZXJpbmcgb2Ygb3JkaW5hcnkgY2hpbGQgbm9kZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU4MDczCisKKyAgICAgICAgKiBmYXN0L2RvbS9zaGFk
b3cvbm8tcmVuZGVyZXJzLWZvci1saWdodC1jaGlsZHJlbi1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIGZhc3QvZG9tL3NoYWRvdy9uby1yZW5kZXJlcnMtZm9yLWxpZ2h0LWNoaWxkcmVu
Lmh0bWw6IEFkZGVkLgorCiAyMDExLTA0LTEzICBQaGlsaXBwZSBOb3JtYW5kICA8cG5vcm1hbmRA
aWdhbGlhLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLCBHVEsgcGxhdGZvcm0gcmVzdWx0cyBm
b3IgZnVsbC1zY3JlZW4tekluZGV4Lmh0bWwgdGVzdC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3QvZG9tL3NoYWRvdy9uby1yZW5kZXJlcnMtZm9yLWxpZ2h0LWNoaWxkcmVuLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NoYWRvdy9uby1yZW5kZXJlcnMtZm9yLWxpZ2h0
LWNoaWxkcmVuLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yOTdiMmVmNTdiYjgxYjg3ODQxMDU1
YTMwMDg4MTA0NDhlYzBjMDBhCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9k
b20vc2hhZG93L25vLXJlbmRlcmVycy1mb3ItbGlnaHQtY2hpbGRyZW4tZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsMyBAQAorQ2hpbGRyZW4gb2YgYW4gZWxlbWVudCBhcmUgbmV2ZXIgcmVuZGVyZWQg
aXMgaXQgaGFzIGEgc2hhZG93IERPTSBzdWJ0cmVlLgorU2hvdWxkIG5vdCBzZWUgdGhlIHdvcmQg
RkFJTCBiZWxvdy4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hhZG93L25v
LXJlbmRlcmVycy1mb3ItbGlnaHQtY2hpbGRyZW4uaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZG9t
L3NoYWRvdy9uby1yZW5kZXJlcnMtZm9yLWxpZ2h0LWNoaWxkcmVuLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
Y2U1NjhlODk2OTBmMmUyM2U0NTU2ZDNjMzRhYzMzMjBhMGZjZjYxNAotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NoYWRvdy9uby1yZW5kZXJlcnMtZm9yLWxpZ2h0LWNo
aWxkcmVuLmh0bWwKQEAgLTAsMCArMSwyMCBAQAorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQ+CisK
K2lmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgbGF5b3V0VGVzdENvbnRyb2xs
ZXIuZHVtcEFzVGV4dCgpOworCit3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIGZ1bmN0
aW9uKCkKK3sKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgna2V5Z2VuJylbMF0u
YXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoJ0ZBSUwnKSk7Cit9LCBmYWxzZSk7
CisKKzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+CitDaGlsZHJlbiBvZiBhbiBlbGVtZW50IGFy
ZSBuZXZlciByZW5kZXJlZCBpcyBpdCBoYXMgYSBzaGFkb3cgRE9NIHN1YnRyZWUuPGJyPgorU2hv
dWxkIG5vdCBzZWUgdGhlIHdvcmQgRkFJTCBiZWxvdy48YnI+Cis8a2V5Z2VuPjwva2V5Z2VuPgor
PC9ib2R5PgorPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRl
eCAwNThmNDBkNjVmZTQ5ZGMwYWQwMDBjNjE5YjVhYjE3NmJhYjNhNDYyLi5lMjE2ZmI0NzM0Yzll
NTEwOTBmODU2YTBjNjI4ODUxMzE5YmUyMjhmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAK
KzIwMTEtMDQtMTMgIERpbWl0cmkgR2xhemtvdiAgPGRnbGF6a292QGNocm9taXVtLm9yZz4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBQcmVzZW5jZSBv
ZiBzaGFkb3cgRE9NIHNob3VsZCBzdXBwcmVzcyByZW5kZXJpbmcgb2Ygb3JkaW5hcnkgY2hpbGQg
bm9kZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU4
MDczCisKKyAgICAgICAgVGVzdDogZmFzdC9kb20vc2hhZG93L25vLXJlbmRlcmVycy1mb3ItbGln
aHQtY2hpbGRyZW4uaHRtbAorCisgICAgICAgICogZG9tL05vZGUuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6c2hhZG93Um9vdCk6IEFkZGVkIGEgaGVscGVyIGZ1bmN0aW9uLgorICAgICAgICAoV2Vi
Q29yZTo6Tm9kZTo6c2V0RG9jdW1lbnRSZWN1cnNpdmVseSk6IENoYW5nZWQgdG8gdXNlIHRoZSBo
ZWxwZXIuCisgICAgICAgIChXZWJDb3JlOjpzaG91bGRDcmVhdGVSZW5kZXJlckZvcik6IEV4cGFu
ZGVkIGEgbG9uZyBjb25kaXRpb24gY2hlY2sgaW50byBhIGhlbHBlciBmdW5jdGlvbiwKKyAgICAg
ICAgICAgIGFkZGVkIGEgY2hlY2sgZm9yIGNoaWxkcmVuIG9mIGFuIGVsZW1lbnQgd2l0aCBhIHNo
YWRvdyBET00uCisgICAgICAgIChXZWJDb3JlOjpOb2RlOjpjcmVhdGVSZW5kZXJlckFuZFN0eWxl
KTogQ2hhbmdlZCB0byB1c2UgdGhlIGhlbHBlci4KKwogMjAxMS0wNC0xMyAgVGhpZXJyeSBSZWRp
bmcgIDx0aGllcnJ5LnJlZGluZ0BhdmlvbmljLWRlc2lnbi5kZT4KIAogICAgICAgICBHdGsrIHBv
cnQgZmFpbHMgdG8gYnVpbGQgd2hlbiBlbmFibGluZyBXZWJHTApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvZG9tL05vZGUuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL05vZGUuY3BwCmluZGV4
IGZlNWJiNzQ4MGY2MjNlZDlkNGFiZTUxMTEyZTc0MTk5ZjE4ZjNkZjMuLjM4NjgwYTViMTg1NWU3
ODAyNzExOGQyNjQ0ZmNmOTg1ZDgwZThjZWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9Ob2RlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZS5jcHAKQEAgLTg1Miw2ICs4
NTIsMTEgQEAgYm9vbCBOb2RlOjpoYXNOb25FbXB0eUJvdW5kaW5nQm94KCkgY29uc3QKICAgICBy
ZXR1cm4gZmFsc2U7CiB9CiAKK2lubGluZSBzdGF0aWMgQ29udGFpbmVyTm9kZSogc2hhZG93Um9v
dChOb2RlKiBub2RlKQoreworICAgIHJldHVybiBub2RlLT5pc0VsZW1lbnROb2RlKCkgPyB0b0Vs
ZW1lbnQobm9kZSktPnNoYWRvd1Jvb3QoKSA6IDA7Cit9CisKIHZvaWQgTm9kZTo6c2V0RG9jdW1l
bnRSZWN1cnNpdmVseShEb2N1bWVudCogbmV3RG9jdW1lbnQpCiB7CiAgICAgQVNTRVJUKGRvY3Vt
ZW50KCkgIT0gbmV3RG9jdW1lbnQpOwpAQCAtODYwLDcgKzg2NSw3IEBAIHZvaWQgTm9kZTo6c2V0
RG9jdW1lbnRSZWN1cnNpdmVseShEb2N1bWVudCogbmV3RG9jdW1lbnQpCiAgICAgICAgIG5vZGUt
PnNldERvY3VtZW50KG5ld0RvY3VtZW50KTsKICAgICAgICAgaWYgKCFub2RlLT5pc0VsZW1lbnRO
b2RlKCkpCiAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgaWYgKE5vZGUqIHNoYWRvdyA9
IHRvRWxlbWVudChub2RlKS0+c2hhZG93Um9vdCgpKQorICAgICAgICBpZiAoTm9kZSogc2hhZG93
ID0gc2hhZG93Um9vdChub2RlKSkKICAgICAgICAgICAgIHNoYWRvdy0+c2V0RG9jdW1lbnRSZWN1
cnNpdmVseShuZXdEb2N1bWVudCk7CiAgICAgfQogfQpAQCAtMTQ1Miw2ICsxNDU3LDI4IEBAIENv
bnRhaW5lck5vZGUqIE5vZGU6OnBhcmVudE5vZGVGb3JSZW5kZXJpbmdBbmRTdHlsZSgpIGNvbnN0
CiAgICAgcmV0dXJuIHBhcmVudCAmJiBwYXJlbnQtPmlzU2hhZG93Qm91bmRhcnkoKSA/IHBhcmVu
dC0+c2hhZG93SG9zdCgpIDogcGFyZW50OwogfQogCitzdGF0aWMgYm9vbCBzaG91bGRDcmVhdGVS
ZW5kZXJlckZvcihOb2RlKiBub2RlLCBDb250YWluZXJOb2RlKiBwYXJlbnRGb3JSZW5kZXJpbmdB
bmRTdHlsZSkKK3sKKyAgICBSZW5kZXJPYmplY3QqIHBhcmVudFJlbmRlcmVyID0gcGFyZW50Rm9y
UmVuZGVyaW5nQW5kU3R5bGUtPnJlbmRlcmVyKCk7CisgICAgaWYgKCFwYXJlbnRSZW5kZXJlcikK
KyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgYm9vbCBhdFNoYWRvd0JvdW5kYXJ5ID0gbm9k
ZS0+cGFyZW50T3JIb3N0Tm9kZSgpLT5pc1NoYWRvd0JvdW5kYXJ5KCk7CisKKyAgICAvLyBGSVhN
RTogSWdub3JpbmcgY2FuSGF2ZUNoaWxkcmVuKCkgaW4gYSBjYXNlIG9mIGlzU2hhZG93Um9vdCgp
IG1pZ2h0IGJlIHdyb25nLgorICAgIC8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NTI0MjMKKyAgICBpZiAoIXBhcmVudFJlbmRlcmVyLT5jYW5IYXZlQ2hpbGRy
ZW4oKSAmJiAhKG5vZGUtPmlzU2hhZG93Um9vdCgpIHx8IGF0U2hhZG93Qm91bmRhcnkpKQorICAg
ICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBpZiAoc2hhZG93Um9vdChwYXJlbnRGb3JSZW5kZXJp
bmdBbmRTdHlsZSkgJiYgIWF0U2hhZG93Qm91bmRhcnkpCisgICAgICAgIHJldHVybiBmYWxzZTsK
KworICAgIGlmICghcGFyZW50Rm9yUmVuZGVyaW5nQW5kU3R5bGUtPmNoaWxkU2hvdWxkQ3JlYXRl
UmVuZGVyZXIobm9kZSkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIHJldHVybiB0cnVl
OworfQorCiBSZW5kZXJPYmplY3QqIE5vZGU6OmNyZWF0ZVJlbmRlcmVyQW5kU3R5bGUoKQogewog
ICAgIEFTU0VSVCghcmVuZGVyZXIoKSk7CkBAIC0xNDYwLDExICsxNDg3LDcgQEAgUmVuZGVyT2Jq
ZWN0KiBOb2RlOjpjcmVhdGVSZW5kZXJlckFuZFN0eWxlKCkKICAgICBDb250YWluZXJOb2RlKiBw
YXJlbnQgPSBwYXJlbnROb2RlRm9yUmVuZGVyaW5nQW5kU3R5bGUoKTsKICAgICBBU1NFUlQocGFy
ZW50KTsKIAotICAgIFJlbmRlck9iamVjdCogcGFyZW50UmVuZGVyZXIgPSBwYXJlbnQtPnJlbmRl
cmVyKCk7Ci0KLSAgICAvLyBGSVhNRTogSWdub3JpbmcgY2FuSGF2ZUNoaWxkcmVuKCkgaW4gYSBj
YXNlIG9mIGlzU2hhZG93Um9vdCgpIG1pZ2h0IGJlIHdyb25nLgotICAgIC8vIFNlZSBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTI0MjMKLSAgICBpZiAoIXBhcmVudFJl
bmRlcmVyIHx8ICghcGFyZW50UmVuZGVyZXItPmNhbkhhdmVDaGlsZHJlbigpICYmICEoaXNTaGFk
b3dSb290KCkgfHwgcGFyZW50Tm9kZSgpLT5pc1NoYWRvd0JvdW5kYXJ5KCkpKSB8fCAhcGFyZW50
LT5jaGlsZFNob3VsZENyZWF0ZVJlbmRlcmVyKHRoaXMpKQorICAgIGlmICghc2hvdWxkQ3JlYXRl
UmVuZGVyZXJGb3IodGhpcywgcGFyZW50KSkKICAgICAgICAgcmV0dXJuIDA7CiAKICAgICBSZWZQ
dHI8UmVuZGVyU3R5bGU+IHN0eWxlID0gc3R5bGVGb3JSZW5kZXJlcigpOwpAQCAtMTQ3NSw3ICsx
NDk4LDcgQEAgUmVuZGVyT2JqZWN0KiBOb2RlOjpjcmVhdGVSZW5kZXJlckFuZFN0eWxlKCkKICAg
ICBpZiAoIW5ld1JlbmRlcmVyKQogICAgICAgICByZXR1cm4gMDsKIAotICAgIGlmICghcGFyZW50
UmVuZGVyZXItPmlzQ2hpbGRBbGxvd2VkKG5ld1JlbmRlcmVyLCBzdHlsZS5nZXQoKSkpIHsKKyAg
ICBpZiAoIXBhcmVudC0+cmVuZGVyZXIoKS0+aXNDaGlsZEFsbG93ZWQobmV3UmVuZGVyZXIsIHN0
eWxlLmdldCgpKSkgewogICAgICAgICBuZXdSZW5kZXJlci0+ZGVzdHJveSgpOwogICAgICAgICBy
ZXR1cm4gMDsKICAgICB9Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>