<?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>82544</bug_id>
          
          <creation_ts>2012-03-28 15:52:06 -0700</creation_ts>
          <short_desc>Factor out common post-insertion logic in ContainerNode</short_desc>
          <delta_ts>2012-03-29 11:04:22 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Adam Klein">adamk</reporter>
          <assigned_to name="Adam Klein">adamk</assigned_to>
          <cc>darin</cc>
    
    <cc>mjs</cc>
    
    <cc>ojan</cc>
    
    <cc>rniwa</cc>
    
    <cc>sam</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>590546</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Klein">adamk</who>
    <bug_when>2012-03-28 15:52:06 -0700</bug_when>
    <thetext>Factor out common post-insertion logic in ContainerNode</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>590550</commentid>
    <comment_count>1</comment_count>
      <attachid>134431</attachid>
    <who name="Adam Klein">adamk</who>
    <bug_when>2012-03-28 15:56:01 -0700</bug_when>
    <thetext>Created attachment 134431
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>590565</commentid>
    <comment_count>2</comment_count>
      <attachid>134431</attachid>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2012-03-28 16:15:36 -0700</bug_when>
    <thetext>Comment on attachment 134431
Patch

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

&gt; Source/WebCore/dom/ContainerNode.cpp:1093
&gt; +    ASSERT(parent-&gt;refCount());
&gt; +    ASSERT(child-&gt;refCount());

great asserts!

&gt; Source/WebCore/dom/ContainerNode.cpp:1095
&gt; +    // Send notification about the children change.

Nit: I realize some of the old instances of this had this comment, but it&apos;s pretty useless. Delete?

&gt; Source/WebCore/dom/ContainerNode.cpp:1099
&gt; +    // Add child to the rendering tree.

Ditto. Useless comment.

&gt; Source/WebCore/dom/ContainerNode.cpp:1108
&gt; +    // Now that the child is attached to the render tree, dispatch
&gt; +    // the relevant mutation events.

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>590566</commentid>
    <comment_count>3</comment_count>
      <attachid>134431</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-03-28 16:16:05 -0700</bug_when>
    <thetext>Comment on attachment 134431
Patch

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

&gt; Source/WebCore/dom/ContainerNode.cpp:1095
&gt; +    // Send notification about the children change.

It seems like this comment is a pure noise.

&gt; Source/WebCore/dom/ContainerNode.cpp:1096
&gt; +    parent-&gt;childrenChanged(false, child-&gt;previousSibling(), child-&gt;nextSibling(), 1);

It seems like we&apos;ll be calling with a different prev if DOM had been mutated in the last call to dispatchChildInsertionEvents but new code seems more correct.
Let&apos;s hope no website depends on the old behavior (very unlikely).

Is there anyway to test this behavior change?

&gt; Source/WebCore/dom/ContainerNode.cpp:1099
&gt; +    // Add child to the rendering tree.

Ditto.

&gt; Source/WebCore/dom/ContainerNode.cpp:1108
&gt; +    // Now that the child is attached to the render tree, dispatch
&gt; +    // the relevant mutation events.

Ditto. Can we explain why we need to do things in this order instead?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>590590</commentid>
    <comment_count>4</comment_count>
      <attachid>134431</attachid>
    <who name="Adam Klein">adamk</who>
    <bug_when>2012-03-28 16:39:02 -0700</bug_when>
    <thetext>Comment on attachment 134431
Patch

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

&gt;&gt;&gt; Source/WebCore/dom/ContainerNode.cpp:1095
&gt;&gt;&gt; +    // Send notification about the children change.
&gt;&gt; 
&gt;&gt; Nit: I realize some of the old instances of this had this comment, but it&apos;s pretty useless. Delete?
&gt; 
&gt; It seems like this comment is a pure noise.

Will remove all comments.

&gt;&gt; Source/WebCore/dom/ContainerNode.cpp:1096
&gt;&gt; +    parent-&gt;childrenChanged(false, child-&gt;previousSibling(), child-&gt;nextSibling(), 1);
&gt; 
&gt; It seems like we&apos;ll be calling with a different prev if DOM had been mutated in the last call to dispatchChildInsertionEvents but new code seems more correct.
&gt; Let&apos;s hope no website depends on the old behavior (very unlikely).
&gt; 
&gt; Is there anyway to test this behavior change?

Note that this is only a change in logic for insertBefore: replaceChild and appendChild already updated prev every time through the loop, after dispatching events.

The only two uses of the &quot;beforeChange&quot; argument to childrenChanged are in Element and HTMLElement. The former is to handle updating the :last-child selector, and there&apos;s no way I can see to get the old code to generate incorrect behavior: all it&apos;s doing is making sure the old lastChild gets its style recalculated, and that&apos;ll happen the first time childrenChanged is called (which is before any events fire).

The HTMLElement case involves directionality, and looks like it might be testable, but I don&apos;t know enough about directionality to easily put one together. See HTMLElement::adjustDirectionalityIfNeededAfterChildrenChanged if you&apos;d like to help me find some way to test this (looks like the new behavior would be strictly better than the old behavior).

&gt;&gt;&gt; Source/WebCore/dom/ContainerNode.cpp:1108
&gt;&gt;&gt; +    // the relevant mutation events.
&gt;&gt; 
&gt;&gt; Ditto.
&gt; 
&gt; Ditto. Can we explain why we need to do things in this order instead?

I&apos;m worried that there isn&apos;t a good explanation, other than that this is the order we do them in. Do you have a suggestion for why it&apos;s important that we call attach() or lazyAttach() before dispatchChildInsertionEvents()?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>590709</commentid>
    <comment_count>5</comment_count>
      <attachid>134464</attachid>
    <who name="Adam Klein">adamk</who>
    <bug_when>2012-03-28 18:28:45 -0700</bug_when>
    <thetext>Created attachment 134464
Added FIXME</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>590721</commentid>
    <comment_count>6</comment_count>
      <attachid>134464</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-03-28 18:44:56 -0700</bug_when>
    <thetext>Comment on attachment 134464
Added FIXME

I think Ojan&apos;s r+ withstands :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>591327</commentid>
    <comment_count>7</comment_count>
      <attachid>134464</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-29 11:04:17 -0700</bug_when>
    <thetext>Comment on attachment 134464
Added FIXME

Clearing flags on attachment: 134464

Committed r112546: &lt;http://trac.webkit.org/changeset/112546&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>591328</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-29 11:04:22 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>134431</attachid>
            <date>2012-03-28 15:56:01 -0700</date>
            <delta_ts>2012-03-28 18:28:42 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-82544-20120328155600.patch</filename>
            <type>text/plain</type>
            <size>6485</size>
            <attacher name="Adam Klein">adamk</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTEyNDU2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTJhNTZkYjg4MzdhNmFm
OGI3YmM4NTNhMGUwYWM0OWUzYTBiOGMxNi4uZDE4MzE2NmFhM2YwYTAyMmE5ZDczZmEyY2Y4OTk4
ODYyYTEwOGYxYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDEyLTAzLTI4ICBBZGFt
IEtsZWluICA8YWRhbWtAY2hyb21pdW0ub3JnPgorCisgICAgICAgIEZhY3RvciBvdXQgY29tbW9u
IHBvc3QtaW5zZXJ0aW9uIGxvZ2ljIGluIENvbnRhaW5lck5vZGUKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgyNTQ0CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgYXBwZW5kQ2hpbGQsIGluc2VydEJlZm9yZSwg
YW5kIHJlcGxhY2VDaGlsZCBhbGwgc2hhcmUgYSBncmVhdCBkZWFsIG9mIGxvZ2ljLgorICAgICAg
ICBUaGlzIHBhdGNoIGZhY3RvcnMgb3V0IHRoZSAicG9zdC1pbnNlcnRpb24iIGxvZ2ljIHRoYXQg
ZGVhbHMgd2l0aAorICAgICAgICBub3RpZnlpbmcgcGFyZW50cyB0aGF0IHRoZWlyIGNoaWxkcmVu
IGNoYW5nZWQgYW5kIG5vdGlmeWluZyBjaGlsZHJlbgorICAgICAgICB0aGF0IHRoZXkndmUgYmVl
biBhZGRlZCB0byB0aGUgdHJlZS4KKworICAgICAgICBCZXNpZGVzIHJlZHVjaW5nIGNvZGUgZHVw
bGljYXRpb24sIHRoaXMgaXMgaW4gcHJlcGFyYXRpb24gZm9yIG1vdmluZworICAgICAgICB0aGlz
IHBvc3QtaW5zZXJ0aW9uIG5vdGlmaWNhdGlvbiBsYXRlciBpbiB0aGUgaW5zZXJ0aW9uIHByb2Nl
c3MuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCBubyBjaGFuZ2UgaW4gYmVoYXZpb3IuCisKKyAg
ICAgICAgKiBkb20vQ29udGFpbmVyTm9kZS5jcHA6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAg
ICAgKFdlYkNvcmU6OkNvbnRhaW5lck5vZGU6Omluc2VydEJlZm9yZSk6IEZhY3RvciBvdXQgc2hh
cmVkIGxvZ2ljLCByZW1vdmUgdW5uZWNlc3NhcnkgInByZXYiIHZhcmlhYmxlLgorICAgICAgICAo
V2ViQ29yZTo6Q29udGFpbmVyTm9kZTo6cmVwbGFjZUNoaWxkKTogZGl0dG8uCisgICAgICAgIChX
ZWJDb3JlOjpDb250YWluZXJOb2RlOjphcHBlbmRDaGlsZCk6IGRpdHRvLgorICAgICAgICAoV2Vi
Q29yZTo6dXBkYXRlVHJlZUFmdGVySW5zZXJ0aW9uKTogTmV3IGhlbHBlciBtZXRob2QgZW5jYXBz
dWxhdGluZyBzaGFyZWQgbG9naWMuCisKIDIwMTItMDMtMjggIEdhdmluIEJhcnJhY2xvdWdoICA8
YmFycmFjbG91Z2hAYXBwbGUuY29tPgogCiAgICAgICAgIFlhcnI6IGlmIHdlJ3JlIG5vdCB1c2lu
ZyB0aGUgb3V0cHV0IGFycmF5LCBkb24ndCBwb3B1bGF0ZSBpdCEKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2RvbS9Db250YWluZXJOb2RlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Db250
YWluZXJOb2RlLmNwcAppbmRleCA3OWUzM2JlYmFkNTg3YTBjOGQzNmEyMWIzZTFkYTUyY2JiNTdj
OTQxLi42OGVhMzc0ZjJiMDQwMWFhMjI0NmJjYTJkNzZiYWVjZWMwMGM5Mzc0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9kb20vQ29udGFpbmVyTm9kZS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvZG9tL0NvbnRhaW5lck5vZGUuY3BwCkBAIC01MCw2ICs1MCw3IEBAIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIHN0YXRpYyB2b2lkIG5vdGlmeUNoaWxkSW5zZXJ0ZWQoTm9kZSopOwogc3RhdGljIHZv
aWQgZGlzcGF0Y2hDaGlsZEluc2VydGlvbkV2ZW50cyhOb2RlKik7CiBzdGF0aWMgdm9pZCBkaXNw
YXRjaENoaWxkUmVtb3ZhbEV2ZW50cyhOb2RlKik7CitzdGF0aWMgdm9pZCB1cGRhdGVUcmVlQWZ0
ZXJJbnNlcnRpb24oQ29udGFpbmVyTm9kZSosIE5vZGUqLCBib29sIHNob3VsZExhenlBdHRhY2gp
OwogCiB0eXBlZGVmIHBhaXI8UmVmUHRyPE5vZGU+LCB1bnNpZ25lZD4gQ2FsbGJhY2tQYXJhbWV0
ZXJzOwogdHlwZWRlZiBwYWlyPE5vZGVDYWxsYmFjaywgQ2FsbGJhY2tQYXJhbWV0ZXJzPiBDYWxs
YmFja0luZm87CkBAIC0xNTUsNyArMTU2LDYgQEAgYm9vbCBDb250YWluZXJOb2RlOjppbnNlcnRC
ZWZvcmUoUGFzc1JlZlB0cjxOb2RlPiBuZXdDaGlsZCwgTm9kZSogcmVmQ2hpbGQsIEV4Y2UKICAg
ICBDaGlsZExpc3RNdXRhdGlvblNjb3BlIG11dGF0aW9uKHRoaXMpOwogI2VuZGlmCiAKLSAgICBS
ZWZQdHI8Tm9kZT4gcHJldiA9IG5leHQtPnByZXZpb3VzU2libGluZygpOwogICAgIGZvciAoTm9k
ZVZlY3Rvcjo6Y29uc3RfaXRlcmF0b3IgaXQgPSB0YXJnZXRzLmJlZ2luKCk7IGl0ICE9IHRhcmdl
dHMuZW5kKCk7ICsraXQpIHsKICAgICAgICAgTm9kZSogY2hpbGQgPSBpdC0+Z2V0KCk7CiAKQEAg
LTE3NiwyMSArMTc2LDcgQEAgYm9vbCBDb250YWluZXJOb2RlOjppbnNlcnRCZWZvcmUoUGFzc1Jl
ZlB0cjxOb2RlPiBuZXdDaGlsZCwgTm9kZSogcmVmQ2hpbGQsIEV4Y2UKIAogICAgICAgICBpbnNl
cnRCZWZvcmVDb21tb24obmV4dC5nZXQoKSwgY2hpbGQpOwogCi0gICAgICAgIC8vIFNlbmQgbm90
aWZpY2F0aW9uIGFib3V0IHRoZSBjaGlsZHJlbiBjaGFuZ2UuCi0gICAgICAgIGNoaWxkcmVuQ2hh
bmdlZChmYWxzZSwgcHJldi5nZXQoKSwgbmV4dC5nZXQoKSwgMSk7Ci0gICAgICAgIG5vdGlmeUNo
aWxkSW5zZXJ0ZWQoY2hpbGQpOwotCi0gICAgICAgIC8vIEFkZCBjaGlsZCB0byB0aGUgcmVuZGVy
aW5nIHRyZWUuCi0gICAgICAgIGlmIChhdHRhY2hlZCgpICYmICFjaGlsZC0+YXR0YWNoZWQoKSAm
JiBjaGlsZC0+cGFyZW50Tm9kZSgpID09IHRoaXMpIHsKLSAgICAgICAgICAgIGlmIChzaG91bGRM
YXp5QXR0YWNoKQotICAgICAgICAgICAgICAgIGNoaWxkLT5sYXp5QXR0YWNoKCk7Ci0gICAgICAg
ICAgICBlbHNlCi0gICAgICAgICAgICAgICAgY2hpbGQtPmF0dGFjaCgpOwotICAgICAgICB9Ci0K
LSAgICAgICAgLy8gTm93IHRoYXQgdGhlIGNoaWxkIGlzIGF0dGFjaGVkIHRvIHRoZSByZW5kZXIg
dHJlZSwgZGlzcGF0Y2gKLSAgICAgICAgLy8gdGhlIHJlbGV2YW50IG11dGF0aW9uIGV2ZW50cy4K
LSAgICAgICAgZGlzcGF0Y2hDaGlsZEluc2VydGlvbkV2ZW50cyhjaGlsZCk7CisgICAgICAgIHVw
ZGF0ZVRyZWVBZnRlckluc2VydGlvbih0aGlzLCBjaGlsZCwgc2hvdWxkTGF6eUF0dGFjaCk7CiAg
ICAgfQogCiAgICAgZGlzcGF0Y2hTdWJ0cmVlTW9kaWZpZWRFdmVudCgpOwpAQCAtMjc2LDcgKzI2
Miw2IEBAIGJvb2wgQ29udGFpbmVyTm9kZTo6cmVwbGFjZUNoaWxkKFBhc3NSZWZQdHI8Tm9kZT4g
bmV3Q2hpbGQsIE5vZGUqIG9sZENoaWxkLCBFeGNlCiAgICAgQ2hpbGRMaXN0TXV0YXRpb25TY29w
ZSBtdXRhdGlvbih0aGlzKTsKICNlbmRpZgogCi0gICAgUmVmUHRyPE5vZGU+IHByZXYgPSBvbGRD
aGlsZC0+cHJldmlvdXNTaWJsaW5nKCk7CiAgICAgUmVmUHRyPE5vZGU+IG5leHQgPSBvbGRDaGls
ZC0+bmV4dFNpYmxpbmcoKTsKIAogICAgIC8vIFJlbW92ZSB0aGUgbm9kZSB3ZSdyZSByZXBsYWNp
bmcKQEAgLTMyMCwyMSArMzA1LDcgQEAgYm9vbCBDb250YWluZXJOb2RlOjpyZXBsYWNlQ2hpbGQo
UGFzc1JlZlB0cjxOb2RlPiBuZXdDaGlsZCwgTm9kZSogb2xkQ2hpbGQsIEV4Y2UKICAgICAgICAg
ICAgIGFwcGVuZENoaWxkVG9Db250YWluZXIoY2hpbGQsIHRoaXMpOwogICAgICAgICBhbGxvd0V2
ZW50RGlzcGF0Y2goKTsKIAotICAgICAgICBjaGlsZHJlbkNoYW5nZWQoZmFsc2UsIHByZXYuZ2V0
KCksIG5leHQuZ2V0KCksIDEpOwotICAgICAgICBub3RpZnlDaGlsZEluc2VydGVkKGNoaWxkKTsK
LQotICAgICAgICAvLyBBZGQgY2hpbGQgdG8gdGhlIHJlbmRlcmluZyB0cmVlCi0gICAgICAgIGlm
IChhdHRhY2hlZCgpICYmICFjaGlsZC0+YXR0YWNoZWQoKSAmJiBjaGlsZC0+cGFyZW50Tm9kZSgp
ID09IHRoaXMpIHsKLSAgICAgICAgICAgIGlmIChzaG91bGRMYXp5QXR0YWNoKQotICAgICAgICAg
ICAgICAgIGNoaWxkLT5sYXp5QXR0YWNoKCk7Ci0gICAgICAgICAgICBlbHNlCi0gICAgICAgICAg
ICAgICAgY2hpbGQtPmF0dGFjaCgpOwotICAgICAgICB9Ci0KLSAgICAgICAgLy8gTm93IHRoYXQg
dGhlIGNoaWxkIGlzIGF0dGFjaGVkIHRvIHRoZSByZW5kZXIgdHJlZSwgZGlzcGF0Y2gKLSAgICAg
ICAgLy8gdGhlIHJlbGV2YW50IG11dGF0aW9uIGV2ZW50cy4KLSAgICAgICAgZGlzcGF0Y2hDaGls
ZEluc2VydGlvbkV2ZW50cyhjaGlsZCk7Ci0gICAgICAgIHByZXYgPSBjaGlsZDsKKyAgICAgICAg
dXBkYXRlVHJlZUFmdGVySW5zZXJ0aW9uKHRoaXMsIGNoaWxkLCBzaG91bGRMYXp5QXR0YWNoKTsK
ICAgICB9CiAKICAgICBkaXNwYXRjaFN1YnRyZWVNb2RpZmllZEV2ZW50KCk7CkBAIC01OTIsNyAr
NTYzLDYgQEAgYm9vbCBDb250YWluZXJOb2RlOjphcHBlbmRDaGlsZChQYXNzUmVmUHRyPE5vZGU+
IG5ld0NoaWxkLCBFeGNlcHRpb25Db2RlJiBlYywgYm8KICNlbmRpZgogCiAgICAgLy8gTm93IGFj
dHVhbGx5IGFkZCB0aGUgY2hpbGQocmVuKQotICAgIFJlZlB0cjxOb2RlPiBwcmV2ID0gbGFzdENo
aWxkKCk7CiAgICAgZm9yIChOb2RlVmVjdG9yOjpjb25zdF9pdGVyYXRvciBpdCA9IHRhcmdldHMu
YmVnaW4oKTsgaXQgIT0gdGFyZ2V0cy5lbmQoKTsgKytpdCkgewogICAgICAgICBOb2RlKiBjaGls
ZCA9IGl0LT5nZXQoKTsKIApAQCAtNjEzLDIyICs1ODMsNyBAQCBib29sIENvbnRhaW5lck5vZGU6
OmFwcGVuZENoaWxkKFBhc3NSZWZQdHI8Tm9kZT4gbmV3Q2hpbGQsIEV4Y2VwdGlvbkNvZGUmIGVj
LCBibwogICAgICAgICBhcHBlbmRDaGlsZFRvQ29udGFpbmVyKGNoaWxkLCB0aGlzKTsKICAgICAg
ICAgYWxsb3dFdmVudERpc3BhdGNoKCk7CiAKLSAgICAgICAgLy8gU2VuZCBub3RpZmljYXRpb24g
YWJvdXQgdGhlIGNoaWxkcmVuIGNoYW5nZS4KLSAgICAgICAgY2hpbGRyZW5DaGFuZ2VkKGZhbHNl
LCBwcmV2LmdldCgpLCAwLCAxKTsKLSAgICAgICAgbm90aWZ5Q2hpbGRJbnNlcnRlZChjaGlsZCk7
Ci0KLSAgICAgICAgLy8gQWRkIGNoaWxkIHRvIHRoZSByZW5kZXJpbmcgdHJlZQotICAgICAgICBp
ZiAoYXR0YWNoZWQoKSAmJiAhY2hpbGQtPmF0dGFjaGVkKCkgJiYgY2hpbGQtPnBhcmVudE5vZGUo
KSA9PSB0aGlzKSB7Ci0gICAgICAgICAgICBpZiAoc2hvdWxkTGF6eUF0dGFjaCkKLSAgICAgICAg
ICAgICAgICBjaGlsZC0+bGF6eUF0dGFjaCgpOwotICAgICAgICAgICAgZWxzZQotICAgICAgICAg
ICAgICAgIGNoaWxkLT5hdHRhY2goKTsKLSAgICAgICAgfQotCi0gICAgICAgIC8vIE5vdyB0aGF0
IHRoZSBjaGlsZCBpcyBhdHRhY2hlZCB0byB0aGUgcmVuZGVyIHRyZWUsIGRpc3BhdGNoCi0gICAg
ICAgIC8vIHRoZSByZWxldmFudCBtdXRhdGlvbiBldmVudHMuCi0gICAgICAgIGRpc3BhdGNoQ2hp
bGRJbnNlcnRpb25FdmVudHMoY2hpbGQpOwotICAgICAgICBwcmV2ID0gY2hpbGQ7CisgICAgICAg
IHVwZGF0ZVRyZWVBZnRlckluc2VydGlvbih0aGlzLCBjaGlsZCwgc2hvdWxkTGF6eUF0dGFjaCk7
CiAgICAgfQogCiAgICAgZGlzcGF0Y2hTdWJ0cmVlTW9kaWZpZWRFdmVudCgpOwpAQCAtMTEzMiw0
ICsxMDg3LDI2IEBAIHN0YXRpYyB2b2lkIGRpc3BhdGNoQ2hpbGRSZW1vdmFsRXZlbnRzKE5vZGUq
IGNoaWxkKQogICAgIH0KIH0KIAorc3RhdGljIHZvaWQgdXBkYXRlVHJlZUFmdGVySW5zZXJ0aW9u
KENvbnRhaW5lck5vZGUqIHBhcmVudCwgTm9kZSogY2hpbGQsIGJvb2wgc2hvdWxkTGF6eUF0dGFj
aCkKK3sKKyAgICBBU1NFUlQocGFyZW50LT5yZWZDb3VudCgpKTsKKyAgICBBU1NFUlQoY2hpbGQt
PnJlZkNvdW50KCkpOworCisgICAgLy8gU2VuZCBub3RpZmljYXRpb24gYWJvdXQgdGhlIGNoaWxk
cmVuIGNoYW5nZS4KKyAgICBwYXJlbnQtPmNoaWxkcmVuQ2hhbmdlZChmYWxzZSwgY2hpbGQtPnBy
ZXZpb3VzU2libGluZygpLCBjaGlsZC0+bmV4dFNpYmxpbmcoKSwgMSk7CisgICAgbm90aWZ5Q2hp
bGRJbnNlcnRlZChjaGlsZCk7CisKKyAgICAvLyBBZGQgY2hpbGQgdG8gdGhlIHJlbmRlcmluZyB0
cmVlLgorICAgIGlmIChwYXJlbnQtPmF0dGFjaGVkKCkgJiYgIWNoaWxkLT5hdHRhY2hlZCgpICYm
IGNoaWxkLT5wYXJlbnROb2RlKCkgPT0gcGFyZW50KSB7CisgICAgICAgIGlmIChzaG91bGRMYXp5
QXR0YWNoKQorICAgICAgICAgICAgY2hpbGQtPmxhenlBdHRhY2goKTsKKyAgICAgICAgZWxzZQor
ICAgICAgICAgICAgY2hpbGQtPmF0dGFjaCgpOworICAgIH0KKworICAgIC8vIE5vdyB0aGF0IHRo
ZSBjaGlsZCBpcyBhdHRhY2hlZCB0byB0aGUgcmVuZGVyIHRyZWUsIGRpc3BhdGNoCisgICAgLy8g
dGhlIHJlbGV2YW50IG11dGF0aW9uIGV2ZW50cy4KKyAgICBkaXNwYXRjaENoaWxkSW5zZXJ0aW9u
RXZlbnRzKGNoaWxkKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>134464</attachid>
            <date>2012-03-28 18:28:45 -0700</date>
            <delta_ts>2012-03-29 11:04:17 -0700</delta_ts>
            <desc>Added FIXME</desc>
            <filename>bug-82544-20120328182845.patch</filename>
            <type>text/plain</type>
            <size>6465</size>
            <attacher name="Adam Klein">adamk</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTEyNDU2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTJhNTZkYjg4MzdhNmFm
OGI3YmM4NTNhMGUwYWM0OWUzYTBiOGMxNi4uZDE4MzE2NmFhM2YwYTAyMmE5ZDczZmEyY2Y4OTk4
ODYyYTEwOGYxYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDEyLTAzLTI4ICBBZGFt
IEtsZWluICA8YWRhbWtAY2hyb21pdW0ub3JnPgorCisgICAgICAgIEZhY3RvciBvdXQgY29tbW9u
IHBvc3QtaW5zZXJ0aW9uIGxvZ2ljIGluIENvbnRhaW5lck5vZGUKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgyNTQ0CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgYXBwZW5kQ2hpbGQsIGluc2VydEJlZm9yZSwg
YW5kIHJlcGxhY2VDaGlsZCBhbGwgc2hhcmUgYSBncmVhdCBkZWFsIG9mIGxvZ2ljLgorICAgICAg
ICBUaGlzIHBhdGNoIGZhY3RvcnMgb3V0IHRoZSAicG9zdC1pbnNlcnRpb24iIGxvZ2ljIHRoYXQg
ZGVhbHMgd2l0aAorICAgICAgICBub3RpZnlpbmcgcGFyZW50cyB0aGF0IHRoZWlyIGNoaWxkcmVu
IGNoYW5nZWQgYW5kIG5vdGlmeWluZyBjaGlsZHJlbgorICAgICAgICB0aGF0IHRoZXkndmUgYmVl
biBhZGRlZCB0byB0aGUgdHJlZS4KKworICAgICAgICBCZXNpZGVzIHJlZHVjaW5nIGNvZGUgZHVw
bGljYXRpb24sIHRoaXMgaXMgaW4gcHJlcGFyYXRpb24gZm9yIG1vdmluZworICAgICAgICB0aGlz
IHBvc3QtaW5zZXJ0aW9uIG5vdGlmaWNhdGlvbiBsYXRlciBpbiB0aGUgaW5zZXJ0aW9uIHByb2Nl
c3MuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCBubyBjaGFuZ2UgaW4gYmVoYXZpb3IuCisKKyAg
ICAgICAgKiBkb20vQ29udGFpbmVyTm9kZS5jcHA6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAg
ICAgKFdlYkNvcmU6OkNvbnRhaW5lck5vZGU6Omluc2VydEJlZm9yZSk6IEZhY3RvciBvdXQgc2hh
cmVkIGxvZ2ljLCByZW1vdmUgdW5uZWNlc3NhcnkgInByZXYiIHZhcmlhYmxlLgorICAgICAgICAo
V2ViQ29yZTo6Q29udGFpbmVyTm9kZTo6cmVwbGFjZUNoaWxkKTogZGl0dG8uCisgICAgICAgIChX
ZWJDb3JlOjpDb250YWluZXJOb2RlOjphcHBlbmRDaGlsZCk6IGRpdHRvLgorICAgICAgICAoV2Vi
Q29yZTo6dXBkYXRlVHJlZUFmdGVySW5zZXJ0aW9uKTogTmV3IGhlbHBlciBtZXRob2QgZW5jYXBz
dWxhdGluZyBzaGFyZWQgbG9naWMuCisKIDIwMTItMDMtMjggIEdhdmluIEJhcnJhY2xvdWdoICA8
YmFycmFjbG91Z2hAYXBwbGUuY29tPgogCiAgICAgICAgIFlhcnI6IGlmIHdlJ3JlIG5vdCB1c2lu
ZyB0aGUgb3V0cHV0IGFycmF5LCBkb24ndCBwb3B1bGF0ZSBpdCEKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2RvbS9Db250YWluZXJOb2RlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Db250
YWluZXJOb2RlLmNwcAppbmRleCA3OWUzM2JlYmFkNTg3YTBjOGQzNmEyMWIzZTFkYTUyY2JiNTdj
OTQxLi40ODMwNDlkZjk0YTY4M2I5OGJlOWUzYjgxYzhjMmUwYTcwMzM2OTM2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9kb20vQ29udGFpbmVyTm9kZS5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvZG9tL0NvbnRhaW5lck5vZGUuY3BwCkBAIC01MCw2ICs1MCw3IEBAIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIHN0YXRpYyB2b2lkIG5vdGlmeUNoaWxkSW5zZXJ0ZWQoTm9kZSopOwogc3RhdGljIHZv
aWQgZGlzcGF0Y2hDaGlsZEluc2VydGlvbkV2ZW50cyhOb2RlKik7CiBzdGF0aWMgdm9pZCBkaXNw
YXRjaENoaWxkUmVtb3ZhbEV2ZW50cyhOb2RlKik7CitzdGF0aWMgdm9pZCB1cGRhdGVUcmVlQWZ0
ZXJJbnNlcnRpb24oQ29udGFpbmVyTm9kZSosIE5vZGUqLCBib29sIHNob3VsZExhenlBdHRhY2gp
OwogCiB0eXBlZGVmIHBhaXI8UmVmUHRyPE5vZGU+LCB1bnNpZ25lZD4gQ2FsbGJhY2tQYXJhbWV0
ZXJzOwogdHlwZWRlZiBwYWlyPE5vZGVDYWxsYmFjaywgQ2FsbGJhY2tQYXJhbWV0ZXJzPiBDYWxs
YmFja0luZm87CkBAIC0xNTUsNyArMTU2LDYgQEAgYm9vbCBDb250YWluZXJOb2RlOjppbnNlcnRC
ZWZvcmUoUGFzc1JlZlB0cjxOb2RlPiBuZXdDaGlsZCwgTm9kZSogcmVmQ2hpbGQsIEV4Y2UKICAg
ICBDaGlsZExpc3RNdXRhdGlvblNjb3BlIG11dGF0aW9uKHRoaXMpOwogI2VuZGlmCiAKLSAgICBS
ZWZQdHI8Tm9kZT4gcHJldiA9IG5leHQtPnByZXZpb3VzU2libGluZygpOwogICAgIGZvciAoTm9k
ZVZlY3Rvcjo6Y29uc3RfaXRlcmF0b3IgaXQgPSB0YXJnZXRzLmJlZ2luKCk7IGl0ICE9IHRhcmdl
dHMuZW5kKCk7ICsraXQpIHsKICAgICAgICAgTm9kZSogY2hpbGQgPSBpdC0+Z2V0KCk7CiAKQEAg
LTE3NiwyMSArMTc2LDcgQEAgYm9vbCBDb250YWluZXJOb2RlOjppbnNlcnRCZWZvcmUoUGFzc1Jl
ZlB0cjxOb2RlPiBuZXdDaGlsZCwgTm9kZSogcmVmQ2hpbGQsIEV4Y2UKIAogICAgICAgICBpbnNl
cnRCZWZvcmVDb21tb24obmV4dC5nZXQoKSwgY2hpbGQpOwogCi0gICAgICAgIC8vIFNlbmQgbm90
aWZpY2F0aW9uIGFib3V0IHRoZSBjaGlsZHJlbiBjaGFuZ2UuCi0gICAgICAgIGNoaWxkcmVuQ2hh
bmdlZChmYWxzZSwgcHJldi5nZXQoKSwgbmV4dC5nZXQoKSwgMSk7Ci0gICAgICAgIG5vdGlmeUNo
aWxkSW5zZXJ0ZWQoY2hpbGQpOwotCi0gICAgICAgIC8vIEFkZCBjaGlsZCB0byB0aGUgcmVuZGVy
aW5nIHRyZWUuCi0gICAgICAgIGlmIChhdHRhY2hlZCgpICYmICFjaGlsZC0+YXR0YWNoZWQoKSAm
JiBjaGlsZC0+cGFyZW50Tm9kZSgpID09IHRoaXMpIHsKLSAgICAgICAgICAgIGlmIChzaG91bGRM
YXp5QXR0YWNoKQotICAgICAgICAgICAgICAgIGNoaWxkLT5sYXp5QXR0YWNoKCk7Ci0gICAgICAg
ICAgICBlbHNlCi0gICAgICAgICAgICAgICAgY2hpbGQtPmF0dGFjaCgpOwotICAgICAgICB9Ci0K
LSAgICAgICAgLy8gTm93IHRoYXQgdGhlIGNoaWxkIGlzIGF0dGFjaGVkIHRvIHRoZSByZW5kZXIg
dHJlZSwgZGlzcGF0Y2gKLSAgICAgICAgLy8gdGhlIHJlbGV2YW50IG11dGF0aW9uIGV2ZW50cy4K
LSAgICAgICAgZGlzcGF0Y2hDaGlsZEluc2VydGlvbkV2ZW50cyhjaGlsZCk7CisgICAgICAgIHVw
ZGF0ZVRyZWVBZnRlckluc2VydGlvbih0aGlzLCBjaGlsZCwgc2hvdWxkTGF6eUF0dGFjaCk7CiAg
ICAgfQogCiAgICAgZGlzcGF0Y2hTdWJ0cmVlTW9kaWZpZWRFdmVudCgpOwpAQCAtMjc2LDcgKzI2
Miw2IEBAIGJvb2wgQ29udGFpbmVyTm9kZTo6cmVwbGFjZUNoaWxkKFBhc3NSZWZQdHI8Tm9kZT4g
bmV3Q2hpbGQsIE5vZGUqIG9sZENoaWxkLCBFeGNlCiAgICAgQ2hpbGRMaXN0TXV0YXRpb25TY29w
ZSBtdXRhdGlvbih0aGlzKTsKICNlbmRpZgogCi0gICAgUmVmUHRyPE5vZGU+IHByZXYgPSBvbGRD
aGlsZC0+cHJldmlvdXNTaWJsaW5nKCk7CiAgICAgUmVmUHRyPE5vZGU+IG5leHQgPSBvbGRDaGls
ZC0+bmV4dFNpYmxpbmcoKTsKIAogICAgIC8vIFJlbW92ZSB0aGUgbm9kZSB3ZSdyZSByZXBsYWNp
bmcKQEAgLTMyMCwyMSArMzA1LDcgQEAgYm9vbCBDb250YWluZXJOb2RlOjpyZXBsYWNlQ2hpbGQo
UGFzc1JlZlB0cjxOb2RlPiBuZXdDaGlsZCwgTm9kZSogb2xkQ2hpbGQsIEV4Y2UKICAgICAgICAg
ICAgIGFwcGVuZENoaWxkVG9Db250YWluZXIoY2hpbGQsIHRoaXMpOwogICAgICAgICBhbGxvd0V2
ZW50RGlzcGF0Y2goKTsKIAotICAgICAgICBjaGlsZHJlbkNoYW5nZWQoZmFsc2UsIHByZXYuZ2V0
KCksIG5leHQuZ2V0KCksIDEpOwotICAgICAgICBub3RpZnlDaGlsZEluc2VydGVkKGNoaWxkKTsK
LQotICAgICAgICAvLyBBZGQgY2hpbGQgdG8gdGhlIHJlbmRlcmluZyB0cmVlCi0gICAgICAgIGlm
IChhdHRhY2hlZCgpICYmICFjaGlsZC0+YXR0YWNoZWQoKSAmJiBjaGlsZC0+cGFyZW50Tm9kZSgp
ID09IHRoaXMpIHsKLSAgICAgICAgICAgIGlmIChzaG91bGRMYXp5QXR0YWNoKQotICAgICAgICAg
ICAgICAgIGNoaWxkLT5sYXp5QXR0YWNoKCk7Ci0gICAgICAgICAgICBlbHNlCi0gICAgICAgICAg
ICAgICAgY2hpbGQtPmF0dGFjaCgpOwotICAgICAgICB9Ci0KLSAgICAgICAgLy8gTm93IHRoYXQg
dGhlIGNoaWxkIGlzIGF0dGFjaGVkIHRvIHRoZSByZW5kZXIgdHJlZSwgZGlzcGF0Y2gKLSAgICAg
ICAgLy8gdGhlIHJlbGV2YW50IG11dGF0aW9uIGV2ZW50cy4KLSAgICAgICAgZGlzcGF0Y2hDaGls
ZEluc2VydGlvbkV2ZW50cyhjaGlsZCk7Ci0gICAgICAgIHByZXYgPSBjaGlsZDsKKyAgICAgICAg
dXBkYXRlVHJlZUFmdGVySW5zZXJ0aW9uKHRoaXMsIGNoaWxkLCBzaG91bGRMYXp5QXR0YWNoKTsK
ICAgICB9CiAKICAgICBkaXNwYXRjaFN1YnRyZWVNb2RpZmllZEV2ZW50KCk7CkBAIC01OTIsNyAr
NTYzLDYgQEAgYm9vbCBDb250YWluZXJOb2RlOjphcHBlbmRDaGlsZChQYXNzUmVmUHRyPE5vZGU+
IG5ld0NoaWxkLCBFeGNlcHRpb25Db2RlJiBlYywgYm8KICNlbmRpZgogCiAgICAgLy8gTm93IGFj
dHVhbGx5IGFkZCB0aGUgY2hpbGQocmVuKQotICAgIFJlZlB0cjxOb2RlPiBwcmV2ID0gbGFzdENo
aWxkKCk7CiAgICAgZm9yIChOb2RlVmVjdG9yOjpjb25zdF9pdGVyYXRvciBpdCA9IHRhcmdldHMu
YmVnaW4oKTsgaXQgIT0gdGFyZ2V0cy5lbmQoKTsgKytpdCkgewogICAgICAgICBOb2RlKiBjaGls
ZCA9IGl0LT5nZXQoKTsKIApAQCAtNjEzLDIyICs1ODMsNyBAQCBib29sIENvbnRhaW5lck5vZGU6
OmFwcGVuZENoaWxkKFBhc3NSZWZQdHI8Tm9kZT4gbmV3Q2hpbGQsIEV4Y2VwdGlvbkNvZGUmIGVj
LCBibwogICAgICAgICBhcHBlbmRDaGlsZFRvQ29udGFpbmVyKGNoaWxkLCB0aGlzKTsKICAgICAg
ICAgYWxsb3dFdmVudERpc3BhdGNoKCk7CiAKLSAgICAgICAgLy8gU2VuZCBub3RpZmljYXRpb24g
YWJvdXQgdGhlIGNoaWxkcmVuIGNoYW5nZS4KLSAgICAgICAgY2hpbGRyZW5DaGFuZ2VkKGZhbHNl
LCBwcmV2LmdldCgpLCAwLCAxKTsKLSAgICAgICAgbm90aWZ5Q2hpbGRJbnNlcnRlZChjaGlsZCk7
Ci0KLSAgICAgICAgLy8gQWRkIGNoaWxkIHRvIHRoZSByZW5kZXJpbmcgdHJlZQotICAgICAgICBp
ZiAoYXR0YWNoZWQoKSAmJiAhY2hpbGQtPmF0dGFjaGVkKCkgJiYgY2hpbGQtPnBhcmVudE5vZGUo
KSA9PSB0aGlzKSB7Ci0gICAgICAgICAgICBpZiAoc2hvdWxkTGF6eUF0dGFjaCkKLSAgICAgICAg
ICAgICAgICBjaGlsZC0+bGF6eUF0dGFjaCgpOwotICAgICAgICAgICAgZWxzZQotICAgICAgICAg
ICAgICAgIGNoaWxkLT5hdHRhY2goKTsKLSAgICAgICAgfQotCi0gICAgICAgIC8vIE5vdyB0aGF0
IHRoZSBjaGlsZCBpcyBhdHRhY2hlZCB0byB0aGUgcmVuZGVyIHRyZWUsIGRpc3BhdGNoCi0gICAg
ICAgIC8vIHRoZSByZWxldmFudCBtdXRhdGlvbiBldmVudHMuCi0gICAgICAgIGRpc3BhdGNoQ2hp
bGRJbnNlcnRpb25FdmVudHMoY2hpbGQpOwotICAgICAgICBwcmV2ID0gY2hpbGQ7CisgICAgICAg
IHVwZGF0ZVRyZWVBZnRlckluc2VydGlvbih0aGlzLCBjaGlsZCwgc2hvdWxkTGF6eUF0dGFjaCk7
CiAgICAgfQogCiAgICAgZGlzcGF0Y2hTdWJ0cmVlTW9kaWZpZWRFdmVudCgpOwpAQCAtMTEzMiw0
ICsxMDg3LDI1IEBAIHN0YXRpYyB2b2lkIGRpc3BhdGNoQ2hpbGRSZW1vdmFsRXZlbnRzKE5vZGUq
IGNoaWxkKQogICAgIH0KIH0KIAorc3RhdGljIHZvaWQgdXBkYXRlVHJlZUFmdGVySW5zZXJ0aW9u
KENvbnRhaW5lck5vZGUqIHBhcmVudCwgTm9kZSogY2hpbGQsIGJvb2wgc2hvdWxkTGF6eUF0dGFj
aCkKK3sKKyAgICBBU1NFUlQocGFyZW50LT5yZWZDb3VudCgpKTsKKyAgICBBU1NFUlQoY2hpbGQt
PnJlZkNvdW50KCkpOworCisgICAgcGFyZW50LT5jaGlsZHJlbkNoYW5nZWQoZmFsc2UsIGNoaWxk
LT5wcmV2aW91c1NpYmxpbmcoKSwgY2hpbGQtPm5leHRTaWJsaW5nKCksIDEpOworCisgICAgbm90
aWZ5Q2hpbGRJbnNlcnRlZChjaGlsZCk7CisKKyAgICAvLyBGSVhNRTogQXR0YWNobWVudCBzaG91
bGQgYmUgdGhlIGZpcnN0IG9wZXJhdGlvbiBpbiB0aGlzIGZ1bmN0aW9uLCBidXQgc29tZSBjb2Rl
CisgICAgLy8gKGZvciBleGFtcGxlLCBIVE1MRm9ybUNvbnRyb2xFbGVtZW50J3MgYXV0b2ZvY3Vz
IHN1cHBvcnQpIHJlcXVpcmVzIHRoaXMgb3JkZXJpbmcuCisgICAgaWYgKHBhcmVudC0+YXR0YWNo
ZWQoKSAmJiAhY2hpbGQtPmF0dGFjaGVkKCkgJiYgY2hpbGQtPnBhcmVudE5vZGUoKSA9PSBwYXJl
bnQpIHsKKyAgICAgICAgaWYgKHNob3VsZExhenlBdHRhY2gpCisgICAgICAgICAgICBjaGlsZC0+
bGF6eUF0dGFjaCgpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBjaGlsZC0+YXR0YWNoKCk7
CisgICAgfQorCisgICAgZGlzcGF0Y2hDaGlsZEluc2VydGlvbkV2ZW50cyhjaGlsZCk7Cit9CisK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
</data>

          </attachment>
      

    </bug>

</bugzilla>