<?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>16798</bug_id>
          
          <creation_ts>2008-01-09 00:18:54 -0800</creation_ts>
          <short_desc>&lt;button&gt; does not have type=submit (Acid3 bug)</short_desc>
          <delta_ts>2008-02-11 12:22:44 -0800</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>Mac</rep_platform>
          <op_sys>OS X 10.4</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>http://acid3.acidtests.org/</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>HasReduction</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>17064</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Eric Seidel (no email)">eric</reporter>
          <assigned_to name="Dave Hyatt">hyatt</assigned_to>
          <cc>webkit</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>66641</commentid>
    <comment_count>0</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2008-01-09 00:18:54 -0800</bug_when>
    <thetext>Test 59: FAIL (expected button, got:  - &lt;button&gt; doesn&apos;t have type=button)

    function () {
      // test 59: attributes of &lt;button&gt; elements
      var button = document.createElement(&apos;button&apos;);
      assertEquals(button.type, &quot;button&quot;, &quot;&lt;button&gt; doesn&apos;t have type=button&quot;);
      button.setAttribute(&quot;type&quot;, &quot;submit&quot;);
      assertEquals(button.type, &quot;submit&quot;, &quot;&lt;button type=submit&gt; doesn&apos;t have type=submit&quot;);
      button.removeAttribute(&quot;type&quot;);
      assertEquals(button.type, &quot;button&quot;, &quot;&lt;button&gt; doesn&apos;t have type=button back&quot;);
      button.setAttribute(&apos;value&apos;, &apos;apple&apos;);
      button.appendChild(document.createTextNode(&apos;banana&apos;));
      assertEquals(button.value, &apos;apple&apos;, &quot;wrong button value&quot;);
      return 4;
    },</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>66643</commentid>
    <comment_count>1</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2008-01-09 00:39:01 -0800</bug_when>
    <thetext>Currently the code is:

const AtomicString&amp; HTMLButtonElement::type() const
{
    return getAttribute(typeAttr);
}

http://www.w3.org/TR/DOM-Level-2-HTML/html.html#ID-27430092

seems to imply it&apos;s always &quot;button&quot;.

We just need to make a test case which creates an HTMLButtonElement, checks the &quot;button&quot; attribute and dom property tries to change each, and makes sure that it doesn&apos;t change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>67088</commentid>
    <comment_count>2</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2008-01-12 19:57:08 -0800</bug_when>
    <thetext>I guess Hixie and I both read the spec wrong, it should start out as &quot;submit&quot;.  Hixie has corrected the test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>67198</commentid>
    <comment_count>3</comment_count>
      <attachid>18433</attachid>
    <who name="Andrew Wellington">andrew</who>
    <bug_when>2008-01-14 02:42:49 -0800</bug_when>
    <thetext>Created attachment 18433
Proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>67213</commentid>
    <comment_count>4</comment_count>
      <attachid>18433</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2008-01-14 09:45:07 -0800</bug_when>
    <thetext>Comment on attachment 18433
Proposed patch

I guess overriding attributeChanged is the right course of action.  Normally we use parseMappedAttribute, but this attribute can&apos;t be mapped (but that might be OK to use so long as mapAttribute() returns eNone) I&apos;d have to ask hyatt or darin which design is preferred.

Your test case needs to check .getAttribute(&quot;type&quot;) after each set.  We also need to run your test case under FF and IE to make sure we don&apos;t horribly disagree with both.  It&apos;s OK to bring us closer to the spec here, but we might push back against Hixie if IE and FF already agree on this behavior.

Thanks ever so much for the patch!

It might also be interesting to test another valid input type, like &quot;text&quot;, that wouldn&apos;t be valid for &lt;button&gt;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>67234</commentid>
    <comment_count>5</comment_count>
      <attachid>18433</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2008-01-14 10:58:26 -0800</bug_when>
    <thetext>Comment on attachment 18433
Proposed patch

+void HTMLButtonElement::attributeChanged(Attribute* attr, bool preserveDecls)
+{
+    if (attr-&gt;name() == typeAttr &amp;&amp; !attr-&gt;value())
+        m_type = SUBMIT;
+    HTMLGenericFormElement::attributeChanged(attr, preserveDecls);
+}

We should not add this override. Instead the code for this should just go into parseMappedAttribute. It should just be rewritten so it sets m_type to SUBMIT any time the value is neither RESET nor BUTTON.

I&apos;d like to confirm that HTMLButtonElement.type really returns a different value than getAttribute(&quot;type&quot;) in the other browsers. Accordingly, the test case should check both type and getAttribute(&quot;type&quot;).

+debug(&apos;&lt;span&gt;Start test 1&lt;/span&gt;&apos;);

I don&apos;t think these are great. We normally don&apos;t include markup in the debug statements, and I think it&apos;s better not to. And I don&apos;t think it adds much to the output to just number tests here. Maybe if the messages said things like &quot;removing type attribute&quot; it would be better.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>67935</commentid>
    <comment_count>6</comment_count>
      <attachid>18601</attachid>
    <who name="Andrew Wellington">andrew</who>
    <bug_when>2008-01-22 03:01:46 -0800</bug_when>
    <thetext>Created attachment 18601
Almost working patch

This patch works *except* that it causes the following layout tests to fail:
fast/dom/wrapper-classes.html 
platform/mac/fast/dom/wrapper-classes-objc.html

With an assertion failure:
ASSERTION FAILED: !m_deletionHasBegun
(/Users/andrew/Documents/WebKit/WebCore/platform/TreeShared.h:56 void WebCore::TreeShared&lt;T&gt;::ref() [with T = WebCore::Node])

I have no idea why, except removing setAttribute in the HTMLButtonElement constructor makes it go away.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>67949</commentid>
    <comment_count>7</comment_count>
      <attachid>18601</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2008-01-22 09:12:35 -0800</bug_when>
    <thetext>Comment on attachment 18601
Almost working patch

You really shouldn&apos;t be subclassing attributeChanged.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>68836</commentid>
    <comment_count>8</comment_count>
      <attachid>18799</attachid>
    <who name="Robert Blaut">webkit</who>
    <bug_when>2008-01-30 13:36:09 -0800</bug_when>
    <thetext>Created attachment 18799
test case</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>69594</commentid>
    <comment_count>9</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2008-02-06 11:49:16 -0800</bug_when>
    <thetext>Taking bug.  I have a new patch for it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>69595</commentid>
    <comment_count>10</comment_count>
      <attachid>18964</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2008-02-06 11:53:37 -0800</bug_when>
    <thetext>Created attachment 18964
Patch to fix the bug

I will land the excellent test case in the bug as a layout test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>69596</commentid>
    <comment_count>11</comment_count>
      <attachid>18965</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2008-02-06 12:09:57 -0800</bug_when>
    <thetext>Created attachment 18965
more complete (untested) test case (drop in fast/dom/HTMLButtonElement/resources/)

This test case is probably wrong, but at least it exercises more cases.  The values it tests for can be changed by someone who knows how this should behave.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>69704</commentid>
    <comment_count>12</comment_count>
      <attachid>18964</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2008-02-07 13:38:47 -0800</bug_when>
    <thetext>Comment on attachment 18964
Patch to fix the bug

+    return emptyAtom;

I think there should be an ASSERT_NOT_REACHED here. Also, I think it should return &quot;submit&quot; rather than the empty string. But since it should never be reached that doesn&apos;t really matter.

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>69852</commentid>
    <comment_count>13</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2008-02-08 14:27:46 -0800</bug_when>
    <thetext>Hyatt landed this in:
http://trac.webkit.org/projects/webkit/changeset/30095
but with no tests!

I guess we&apos;ll leave this open until he lands the test cases too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>69858</commentid>
    <comment_count>14</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2008-02-08 14:58:07 -0800</bug_when>
    <thetext>Yeah that is why it&apos;s still open.

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>70289</commentid>
    <comment_count>15</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2008-02-11 12:22:44 -0800</bug_when>
    <thetext>Fixed.

</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>18433</attachid>
            <date>2008-01-14 02:42:49 -0800</date>
            <delta_ts>2008-01-22 03:01:46 -0800</delta_ts>
            <desc>Proposed patch</desc>
            <filename>bug-16798-patch-1.txt</filename>
            <type>text/plain</type>
            <size>5871</size>
            <attacher name="Andrew Wellington">andrew</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyOTQ1OSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjAgQEAKKzIwMDgtMDEtMTQgIEFuZHJldyBXZWxsaW5ndG9uICA8cHJvdG9uQHdp
cmV0YXBwZWQubmV0PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisJ
CTxidXR0b24+IGRvZXMgbm90IGhhdmUgdHlwZT1zdWJtaXQgKEFjaWQzIGJ1ZykKKwkJaHR0cDov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY3OTgKKworCQlDb3JyZWN0bHkgcmV0
dXJuIHRoZSBidXR0b24gdHlwZSBhbmQgdXBkYXRlIHRoZSB0eXBlIGFjY29yZGluZworCQl0byB0
aGUgSFRNTCA0IHNwZWNzLgorCisgICAgICAgIFRlc3Q6IGZhc3QvZG9tL0hUTUxCdXR0b25FbGVt
ZW50L2J1dHRvbi10eXBlLmh0bWwKKworICAgICAgICAqIGh0bWwvSFRNTEJ1dHRvbkVsZW1lbnQu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEJ1dHRvbkVsZW1lbnQ6OnR5cGUpOgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTEJ1dHRvbkVsZW1lbnQ6OmF0dHJpYnV0ZUNoYW5nZWQpOgorICAgICAg
ICAqIGh0bWwvSFRNTEJ1dHRvbkVsZW1lbnQuaDoKKwogMjAwOC0wMS0xMyAgU3RldmUgRmFsa2Vu
YnVyZyAgPHNmYWxrZW5AYXBwbGUuY29tPgogCiAgICAgICAgIFNoYXJlIGNvbW1vbiBmaWxlcyBh
Y3Jvc3MgcHJvamVjdHMuCkluZGV4OiBXZWJDb3JlL2h0bWwvSFRNTEJ1dHRvbkVsZW1lbnQuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFdlYkNvcmUvaHRtbC9IVE1MQnV0dG9uRWxlbWVudC5jcHAJKHJldmlz
aW9uIDI5NDU4KQorKysgV2ViQ29yZS9odG1sL0hUTUxCdXR0b25FbGVtZW50LmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtNTYsNyArNTYsMTggQEAgUmVuZGVyT2JqZWN0KiBIVE1MQnV0dG9uRWxlbWVu
dDo6Y3JlYXRlUgogCiBjb25zdCBBdG9taWNTdHJpbmcmIEhUTUxCdXR0b25FbGVtZW50Ojp0eXBl
KCkgY29uc3QKIHsKLSAgICByZXR1cm4gZ2V0QXR0cmlidXRlKHR5cGVBdHRyKTsKKyAgICBzd2l0
Y2ggKG1fdHlwZSkgeworICAgIGNhc2UgU1VCTUlUOgorICAgIGRlZmF1bHQ6CisgICAgICAgIHN0
YXRpYyBjb25zdCBBdG9taWNTdHJpbmcgc3VibWl0KCJzdWJtaXQiKTsKKyAgICAgICAgcmV0dXJu
IHN1Ym1pdDsKKyAgICBjYXNlIFJFU0VUOgorICAgICAgICBzdGF0aWMgY29uc3QgQXRvbWljU3Ry
aW5nIHJlc2V0KCJyZXNldCIpOworICAgICAgICByZXR1cm4gcmVzZXQ7CisgICAgY2FzZSBCVVRU
T046CisgICAgICAgIHN0YXRpYyBjb25zdCBBdG9taWNTdHJpbmcgYnV0dG9uKCJidXR0b24iKTsK
KyAgICAgICAgcmV0dXJuIGJ1dHRvbjsKKyAgICB9CiB9CiAKIHZvaWQgSFRNTEJ1dHRvbkVsZW1l
bnQ6OnBhcnNlTWFwcGVkQXR0cmlidXRlKE1hcHBlZEF0dHJpYnV0ZSogYXR0cikKQEAgLTE3Myw1
ICsxODQsMTMgQEAgdm9pZCBIVE1MQnV0dG9uRWxlbWVudDo6c2V0VmFsdWUoY29uc3QgUwogewog
ICAgIHNldEF0dHJpYnV0ZSh2YWx1ZUF0dHIsIHZhbHVlKTsKIH0KKwordm9pZCBIVE1MQnV0dG9u
RWxlbWVudDo6YXR0cmlidXRlQ2hhbmdlZChBdHRyaWJ1dGUqIGF0dHIsIGJvb2wgcHJlc2VydmVE
ZWNscykKK3sKKyAgICBpZiAoYXR0ci0+bmFtZSgpID09IHR5cGVBdHRyICYmICFhdHRyLT52YWx1
ZSgpKQorICAgICAgICBtX3R5cGUgPSBTVUJNSVQ7CisgICAgSFRNTEdlbmVyaWNGb3JtRWxlbWVu
dDo6YXR0cmlidXRlQ2hhbmdlZChhdHRyLCBwcmVzZXJ2ZURlY2xzKTsKK30KKwogICAgIAogfSAv
LyBuYW1lc3BhY2UKSW5kZXg6IFdlYkNvcmUvaHRtbC9IVE1MQnV0dG9uRWxlbWVudC5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYkNvcmUvaHRtbC9IVE1MQnV0dG9uRWxlbWVudC5oCShyZXZpc2lvbiAyOTQ1
OCkKKysrIFdlYkNvcmUvaHRtbC9IVE1MQnV0dG9uRWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBA
IC01Nyw2ICs1Nyw4IEBAIHB1YmxpYzoKICAgICBTdHJpbmcgdmFsdWUoKSBjb25zdDsKICAgICB2
b2lkIHNldFZhbHVlKGNvbnN0IFN0cmluZyYpOwogICAgIAorICAgIHZvaWQgYXR0cmlidXRlQ2hh
bmdlZChBdHRyaWJ1dGUqIGF0dHIsIGJvb2wgcHJlc2VydmVEZWNscyk7CisgICAgCiBwcml2YXRl
OgogICAgIGVudW0gVHlwZSB7IFNVQk1JVCwgUkVTRVQsIEJVVFRPTiB9OwogCkluZGV4OiBMYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShy
ZXZpc2lvbiAyOTQ1OSkKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDE1IEBACisyMDA4LTAxLTE0ICBBbmRyZXcgV2VsbGluZ3RvbiAgPHByb3RvbkB3
aXJldGFwcGVkLm5ldD4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKyAg
ICAgICAgCisgICAgICAgIDxidXR0b24+IGRvZXMgbm90IGhhdmUgdHlwZT1zdWJtaXQgKEFjaWQz
IGJ1ZykKKwkJaHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY3OTgKKwor
ICAgICAgICAqIGZhc3QvZG9tL0hUTUxCdXR0b25FbGVtZW50L2J1dHRvbi10eXBlLWV4cGVjdGVk
LnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEJ1dHRvbkVsZW1lbnQvYnV0dG9u
LXR5cGUuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vSFRNTEJ1dHRvbkVsZW1lbnQv
cmVzb3VyY2VzOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2RvbS9IVE1MQnV0dG9uRWxlbWVudC9y
ZXNvdXJjZXMvYnV0dG9uLXR5cGUuanM6IEFkZGVkLgorCiAyMDA4LTAxLTE0ICBBbGV4ZXkgUHJv
c2t1cnlha292ICA8YXBAd2Via2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXZpZCBL
aWx6ZXIuCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MQnV0dG9uRWxlbWVudC9idXR0
b24tdHlwZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20v
SFRNTEJ1dHRvbkVsZW1lbnQvYnV0dG9uLXR5cGUtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQor
KysgTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEJ1dHRvbkVsZW1lbnQvYnV0dG9uLXR5cGUtZXhw
ZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDE5IEBACitUZXN0IHRoZSBjb3JyZWN0
IGJlaGF2aW91ciBvZiB0aGUgYnV0dG9uIHR5cGUgYXR0cmlidXRlCisKK09uIHN1Y2Nlc3MsIHlv
dSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNU
IENPTVBMRVRFIi4KKworCitTdGFydCB0ZXN0IDEKK1BBU1MgYnV0dG9uLnR5cGUgaXMgInN1Ym1p
dCIKK1N0YXJ0IHRlc3QgMgorUEFTUyBidXR0b24udHlwZSBpcyAiYnV0dG9uIgorU3RhcnQgdGVz
dCAzCitQQVNTIGJ1dHRvbi50eXBlIGlzICJzdWJtaXQiCitTdGFydCB0ZXN0IDQKK1BBU1MgYnV0
dG9uLnR5cGUgaXMgInJlc2V0IgorU3RhcnQgdGVzdCA1CitQQVNTIGJ1dHRvbi50eXBlIGlzICJy
ZXNldCIKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQor
CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MQnV0dG9uRWxlbWVudC9idXR0b24tdHlw
ZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxCdXR0b25FbGVt
ZW50L2J1dHRvbi10eXBlLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2Rv
bS9IVE1MQnV0dG9uRWxlbWVudC9idXR0b24tdHlwZS5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCww
ICsxLDEzIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+
Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi9qcy9y
ZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uLy4uL2pzL3Jlc291
cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPSJk
ZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHNyYz0i
cmVzb3VyY2VzL2J1dHRvbi10eXBlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9q
cy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
SW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxCdXR0b25FbGVtZW50L3Jlc291cmNlcy9i
dXR0b24tdHlwZS5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MQnV0
dG9uRWxlbWVudC9yZXNvdXJjZXMvYnV0dG9uLXR5cGUuanMJKHJldmlzaW9uIDApCisrKyBMYXlv
dXRUZXN0cy9mYXN0L2RvbS9IVE1MQnV0dG9uRWxlbWVudC9yZXNvdXJjZXMvYnV0dG9uLXR5cGUu
anMJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMzMgQEAKK2Rlc2NyaXB0aW9uKAorIlRlc3QgdGhl
IGNvcnJlY3QgYmVoYXZpb3VyIG9mIHRoZSBidXR0b24gdHlwZSBhdHRyaWJ1dGUiCispOworCisv
LyBUZXN0cyBhZGFwdGVkIGZyb20gQWNpZDMKKworLy8gVEVTVCAxOiBEZWZhdWx0IHRvIHR5cGUg
InN1Ym1pdCIKK2RlYnVnKCc8c3Bhbj5TdGFydCB0ZXN0IDE8L3NwYW4+Jyk7Cit2YXIgYnV0dG9u
ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYnV0dG9uJyk7CitzaG91bGRCZUVxdWFsVG9TdHJp
bmcoImJ1dHRvbi50eXBlIiwgInN1Ym1pdCIpOworCisvLyBURVNUIDI6IFR5cGUgY2FuIGJlIGNo
YW5nZWQKK2RlYnVnKCc8c3Bhbj5TdGFydCB0ZXN0IDI8L3NwYW4+Jyk7CitidXR0b24uc2V0QXR0
cmlidXRlKCJ0eXBlIiwgImJ1dHRvbiIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJidXR0b24u
dHlwZSIsICJidXR0b24iKTsKKworLy8gVEVTVCAzOiBSZW1vdmluZyB0eXBlIHJldmVydHMgdG8g
InN1Ym1pdCIKK2RlYnVnKCc8c3Bhbj5TdGFydCB0ZXN0IDM8L3NwYW4+Jyk7CitidXR0b24ucmVt
b3ZlQXR0cmlidXRlKCJ0eXBlIik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoImJ1dHRvbi50eXBl
IiwgInN1Ym1pdCIpOworCisvLyBURVNUIDQ6IENhbiBjaGFuZ2UgdG8gdHlwZSAicmVzZXQiCitk
ZWJ1ZygnPHNwYW4+U3RhcnQgdGVzdCA0PC9zcGFuPicpOworYnV0dG9uLnNldEF0dHJpYnV0ZSgi
dHlwZSIsICJyZXNldCIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJidXR0b24udHlwZSIsICJy
ZXNldCIpOworCisvLyBURVNUIDU6IENhbid0IGNoYW5nZSB0byBydWJiaXNoIHR5cGVzCitkZWJ1
ZygnPHNwYW4+U3RhcnQgdGVzdCA1PC9zcGFuPicpOworYnV0dG9uLnNldEF0dHJpYnV0ZSgidHlw
ZSIsICJ0cmlhbnR5d29udHlnb25nYWxvcGUiKTsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygiYnV0
dG9uLnR5cGUiLCAicmVzZXQiKTsKKworCit2YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsK
</data>
<flag name="review"
          id="8057"
          type_id="1"
          status="-"
          setter="darin"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>18601</attachid>
            <date>2008-01-22 03:01:46 -0800</date>
            <delta_ts>2008-02-06 11:53:37 -0800</delta_ts>
            <desc>Almost working patch</desc>
            <filename>bug-16798-patch-2-tmp.txt</filename>
            <type>text/plain</type>
            <size>6323</size>
            <attacher name="Andrew Wellington">andrew</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvaHRtbC9IVE1MQnV0dG9uRWxlbWVudC5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViQ29yZS9odG1sL0hUTUxCdXR0b25FbGVtZW50LmNwcAkocmV2aXNpb24gMjk3MTIpCisrKyBX
ZWJDb3JlL2h0bWwvSFRNTEJ1dHRvbkVsZW1lbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00Myw2
ICs0Myw3IEBACiAgICAgLCBtX3R5cGUoU1VCTUlUKQogICAgICwgbV9hY3RpdmVTdWJtaXQoZmFs
c2UpCiB7CisgICAgc2V0QXR0cmlidXRlKHR5cGVBdHRyLCAic3VibWl0Iik7CiB9CiAKIEhUTUxC
dXR0b25FbGVtZW50Ojp+SFRNTEJ1dHRvbkVsZW1lbnQoKQpAQCAtNjgsNiArNjksMTAgQEAKICAg
ICAgICAgICAgIG1fdHlwZSA9IFJFU0VUOwogICAgICAgICBlbHNlIGlmIChlcXVhbElnbm9yaW5n
Q2FzZShhdHRyLT52YWx1ZSgpLCAiYnV0dG9uIikpCiAgICAgICAgICAgICBtX3R5cGUgPSBCVVRU
T047CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgYXR0ci0+c2V0VmFsdWUoInN1Ym1pdCIp
OworICAgICAgICAgICAgbV90eXBlID0gU1VCTUlUOworICAgICAgICB9CiAgICAgfSBlbHNlIGlm
IChhdHRyLT5uYW1lKCkgPT0gYWxpZ25BdHRyKSB7CiAgICAgICAgIC8vIERvbid0IG1hcCAnYWxp
Z24nIGF0dHJpYnV0ZS4gIFRoaXMgbWF0Y2hlcyB3aGF0IEZpcmVmb3ggYW5kIElFIGRvLCBidXQg
bm90IE9wZXJhLgogICAgICAgICAvLyBTZWUgaHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTIwNzEKQEAgLTE3Myw1ICsxNzgsMTUgQEAKIHsKICAgICBzZXRBdHRyaWJ1dGUo
dmFsdWVBdHRyLCB2YWx1ZSk7CiB9CisKK3ZvaWQgSFRNTEJ1dHRvbkVsZW1lbnQ6OmF0dHJpYnV0
ZUNoYW5nZWQoQXR0cmlidXRlKiBhdHRyLCBib29sIHByZXNlcnZlRGVjbHMpCit7CisgICAgLy8g
VGhpcyBpcyB0byB0YWtlIGNhcmUgb2Ygc2l0dWF0aW9ucyB3aGVyZSByZW1vdmVBdHRyaWJ1dGUg
aXMgdXNlZCB0byByZW1vdmUgdGhlIHR5cGUKKyAgICAvLyBvZiB0aGUgYnV0dG9uLiBXZSByZXNl
dCBiYWNrIHRvIHN1Ym1pdCBpbiB0aGlzIGNhc2UuCisgICAgaWYgKGF0dHItPm5hbWUoKSA9PSB0
eXBlQXR0ciAmJiAhYXR0ci0+dmFsdWUoKSkKKyAgICAgICAgc2V0QXR0cmlidXRlKHR5cGVBdHRy
LCAic3VibWl0Iik7CisgICAgSFRNTEdlbmVyaWNGb3JtRWxlbWVudDo6YXR0cmlidXRlQ2hhbmdl
ZChhdHRyLCBwcmVzZXJ2ZURlY2xzKTsKK30KKwogICAgIAogfSAvLyBuYW1lc3BhY2UKSW5kZXg6
IFdlYkNvcmUvaHRtbC9IVE1MQnV0dG9uRWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUv
aHRtbC9IVE1MQnV0dG9uRWxlbWVudC5oCShyZXZpc2lvbiAyOTcxMikKKysrIFdlYkNvcmUvaHRt
bC9IVE1MQnV0dG9uRWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC01Nyw2ICs1Nyw4IEBACiAg
ICAgU3RyaW5nIHZhbHVlKCkgY29uc3Q7CiAgICAgdm9pZCBzZXRWYWx1ZShjb25zdCBTdHJpbmcm
KTsKICAgICAKKyAgICB2b2lkIGF0dHJpYnV0ZUNoYW5nZWQoQXR0cmlidXRlKiBhdHRyLCBib29s
IHByZXNlcnZlRGVjbHMpOworICAgIAogcHJpdmF0ZToKICAgICBlbnVtIFR5cGUgeyBTVUJNSVQs
IFJFU0VULCBCVVRUT04gfTsKIApJbmRleDogV2ViQ29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gV2ViQ29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI5NzEyKQorKysgV2ViQ29yZS9DaGFuZ2VM
b2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwyMCBAQAorMjAwOC0wMS0yMiAgQW5kcmV3IFdl
bGxpbmd0b24gIDxwcm90b25Ad2lyZXRhcHBlZC5uZXQ+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKwkJPGJ1dHRvbj4gZG9lcyBub3QgaGF2ZSB0eXBlPXN1Ym1pdCAo
QWNpZDMgYnVnKQorCQlodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjc5
OAorCisJCUNvcnJlY3RseSByZXR1cm4gdGhlIGJ1dHRvbiB0eXBlIGFuZCB1cGRhdGUgdGhlIHR5
cGUgYWNjb3JkaW5nCisJCXRvIHRoZSBIVE1MIDQgc3BlY3MuCisKKyAgICAgICAgVGVzdDogZmFz
dC9kb20vSFRNTEJ1dHRvbkVsZW1lbnQvYnV0dG9uLXR5cGUuaHRtbAorCisgICAgICAgICogaHRt
bC9IVE1MQnV0dG9uRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MQnV0dG9uRWxl
bWVudDo6dHlwZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MQnV0dG9uRWxlbWVudDo6YXR0cmli
dXRlQ2hhbmdlZCk6CisgICAgICAgICogaHRtbC9IVE1MQnV0dG9uRWxlbWVudC5oOgorCiAyMDA4
LTAxLTIyICBMYXJzIEtub2xsICA8bGFyc0B0cm9sbHRlY2guY29tPgogCiAgICAgICAgIFJldmll
d2VkIGJ5IFNpbW9uLgpJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gMjk3MTIpCisrKyBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNSBAQAorMjAwOC0wMS0yMiAgQW5k
cmV3IFdlbGxpbmd0b24gIDxwcm90b25Ad2lyZXRhcHBlZC5uZXQ+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisgICAgICAgIAorICAgICAgICA8YnV0dG9uPiBkb2VzIG5v
dCBoYXZlIHR5cGU9c3VibWl0IChBY2lkMyBidWcpCisJCWh0dHA6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE2Nzk4CisKKyAgICAgICAgKiBmYXN0L2RvbS9IVE1MQnV0dG9uRWxl
bWVudC9idXR0b24tdHlwZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZG9t
L0hUTUxCdXR0b25FbGVtZW50L2J1dHRvbi10eXBlLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZh
c3QvZG9tL0hUTUxCdXR0b25FbGVtZW50L3Jlc291cmNlczogQWRkZWQuCisgICAgICAgICogZmFz
dC9kb20vSFRNTEJ1dHRvbkVsZW1lbnQvcmVzb3VyY2VzL2J1dHRvbi10eXBlLmpzOiBBZGRlZC4K
KwogMjAwOC0wMS0yMiAgTGFycyBLbm9sbCAgPGxhcnNAdHJvbGx0ZWNoLmNvbT4KIAogICAgICAg
ICBSZXZpZXdlZCBieSBTaW1vbi4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxCdXR0
b25FbGVtZW50L2J1dHRvbi10eXBlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9mYXN0L2RvbS9IVE1MQnV0dG9uRWxlbWVudC9idXR0b24tdHlwZS1leHBlY3RlZC50eHQJ
KHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MQnV0dG9uRWxlbWVudC9i
dXR0b24tdHlwZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTkgQEAKK1Rl
c3QgdGhlIGNvcnJlY3QgYmVoYXZpb3VyIG9mIHRoZSBidXR0b24gdHlwZSBhdHRyaWJ1dGUKKwor
T24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9s
bG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgYnV0dG9uLnR5cGUgaXMgInN1Ym1p
dCIKK1BBU1MgYnV0dG9uLmdldEF0dHJpYnV0ZSgndHlwZScpIGlzICJzdWJtaXQiCitQQVNTIGJ1
dHRvbi50eXBlIGlzICJidXR0b24iCitQQVNTIGJ1dHRvbi5nZXRBdHRyaWJ1dGUoJ3R5cGUnKSBp
cyAiYnV0dG9uIgorUEFTUyBidXR0b24udHlwZSBpcyAic3VibWl0IgorUEFTUyBidXR0b24uZ2V0
QXR0cmlidXRlKCd0eXBlJykgaXMgInN1Ym1pdCIKK1BBU1MgYnV0dG9uLnR5cGUgaXMgInJlc2V0
IgorUEFTUyBidXR0b24uZ2V0QXR0cmlidXRlKCd0eXBlJykgaXMgInJlc2V0IgorUEFTUyBidXR0
b24udHlwZSBpcyAic3VibWl0IgorUEFTUyBidXR0b24uZ2V0QXR0cmlidXRlKCd0eXBlJykgaXMg
InN1Ym1pdCIKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVU
RQorCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2RvbS9IVE1MQnV0dG9uRWxlbWVudC9yZXNvdXJj
ZXMvYnV0dG9uLXR5cGUuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRN
TEJ1dHRvbkVsZW1lbnQvcmVzb3VyY2VzL2J1dHRvbi10eXBlLmpzCShyZXZpc2lvbiAwKQorKysg
TGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEJ1dHRvbkVsZW1lbnQvcmVzb3VyY2VzL2J1dHRvbi10
eXBlLmpzCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDM0IEBACitkZXNjcmlwdGlvbigKKyJUZXN0
IHRoZSBjb3JyZWN0IGJlaGF2aW91ciBvZiB0aGUgYnV0dG9uIHR5cGUgYXR0cmlidXRlIgorKTsK
KworLy8gVGVzdHMgYWRhcHRlZCBmcm9tIEFjaWQzCisKKy8vIFRFU1QgMTogRGVmYXVsdCB0byB0
eXBlICJzdWJtaXQiCit2YXIgYnV0dG9uID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYnV0dG9u
Jyk7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoImJ1dHRvbi50eXBlIiwgInN1Ym1pdCIpOworc2hv
dWxkQmVFcXVhbFRvU3RyaW5nKCJidXR0b24uZ2V0QXR0cmlidXRlKCd0eXBlJykiLCAic3VibWl0
Iik7CisKKy8vIFRFU1QgMjogVHlwZSBjYW4gYmUgY2hhbmdlZAorYnV0dG9uLnNldEF0dHJpYnV0
ZSgidHlwZSIsICJidXR0b24iKTsKK3Nob3VsZEJlRXF1YWxUb1N0cmluZygiYnV0dG9uLnR5cGUi
LCAiYnV0dG9uIik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoImJ1dHRvbi5nZXRBdHRyaWJ1dGUo
J3R5cGUnKSIsICJidXR0b24iKTsKKworLy8gVEVTVCAzOiBSZW1vdmluZyB0eXBlIHJldmVydHMg
dG8gInN1Ym1pdCIKK2J1dHRvbi5yZW1vdmVBdHRyaWJ1dGUoInR5cGUiKTsKK3Nob3VsZEJlRXF1
YWxUb1N0cmluZygiYnV0dG9uLnR5cGUiLCAic3VibWl0Iik7CitzaG91bGRCZUVxdWFsVG9TdHJp
bmcoImJ1dHRvbi5nZXRBdHRyaWJ1dGUoJ3R5cGUnKSIsICJzdWJtaXQiKTsKKworLy8gVEVTVCA0
OiBDYW4gY2hhbmdlIHRvIHR5cGUgInJlc2V0IgorYnV0dG9uLnNldEF0dHJpYnV0ZSgidHlwZSIs
ICJyZXNldCIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJidXR0b24udHlwZSIsICJyZXNldCIp
Oworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJidXR0b24uZ2V0QXR0cmlidXRlKCd0eXBlJykiLCAi
cmVzZXQiKTsKKworLy8gVEVTVCA1OiBDYW4ndCBjaGFuZ2UgdG8gcnViYmlzaCB0eXBlczogcmVz
ZXQgYmFjayB0byBzdWJtaXQKK2J1dHRvbi5zZXRBdHRyaWJ1dGUoInR5cGUiLCAidHJpYW50eXdv
bnR5Z29uZ2Fsb3BlIik7CitzaG91bGRCZUVxdWFsVG9TdHJpbmcoImJ1dHRvbi50eXBlIiwgInN1
Ym1pdCIpOworc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJidXR0b24uZ2V0QXR0cmlidXRlKCd0eXBl
JykiLCAic3VibWl0Iik7CisKKworCit2YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKSW5k
ZXg6IExheW91dFRlc3RzL2Zhc3QvZG9tL0hUTUxCdXR0b25FbGVtZW50L2J1dHRvbi10eXBlLmh0
bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9kb20vSFRNTEJ1dHRvbkVsZW1lbnQv
YnV0dG9uLXR5cGUuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvZG9tL0hU
TUxCdXR0b25FbGVtZW50L2J1dHRvbi10eXBlLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEs
MTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxo
dG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uL2pzL3Jlc291
cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0iLi4vLi4vanMvcmVzb3VyY2Vz
L2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAgaWQ9ImRlc2Ny
aXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgc3JjPSJyZXNv
dXJjZXMvYnV0dG9uLXR5cGUuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL2pzL3Jl
c291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgo=
</data>
<flag name="review"
          id="8136"
          type_id="1"
          status="-"
          setter="hyatt"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>18799</attachid>
            <date>2008-01-30 13:36:09 -0800</date>
            <delta_ts>2008-01-30 13:36:09 -0800</delta_ts>
            <desc>test case</desc>
            <filename>bug-16751-minimal-test-case.html</filename>
            <type>text/html</type>
            <size>530</size>
            <attacher name="Robert Blaut">webkit</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEvL0VOIiAiaHR0cDov
L3d3dy53My5vcmcvVFIvaHRtbDQvc3RyaWN0LmR0ZCI+CjxodG1sPgo8aGVhZD4KPHRpdGxlPlRl
c3QgY2FzZSBmb3IgY2hlY2tpbmcgZmlyc3RDaGlsZC5ub2RlVHlwZSBvZiBhIGRvY3VtZW50PC90
aXRsZT4KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCWJ1dHRvbiB7ZGlzcGxheTpub25lO30KPC9z
dHlsZT4KPC9oZWFkPgo8Ym9keT4KPHA+VGhlcmUgc2hvdWxkIGJlIG5vIFJFRCBvbiB0aGUgcGFn
ZTwvcD4KPGJ1dHRvbiBpZD0nYnV0dG9uJz48L2J1dHRvbj4KCjxzY3JpcHQgdHlwZT0idGV4dC9q
YXZhc2NyaXB0Ij4KCWlmIChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnYnV0dG9uJykudHlwZSAh
PSJzdWJtaXQiKSBkb2N1bWVudC53cml0ZSgiPHAgc3R5bGU9XCJiYWNrZ3JvdW5kLWNvbG9yOnJl
ZDtcIj5Xcm9uZyBkZWZhdWx0IHR5cGUgb2YgQlVUVE9OIGVsZW1lbnQ8L3A+Iik7Cjwvc2NyaXB0
Pgo8L2JvZHk+CjwvaHRtbD4=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>18964</attachid>
            <date>2008-02-06 11:53:37 -0800</date>
            <delta_ts>2008-02-07 13:38:47 -0800</delta_ts>
            <desc>Patch to fix the bug</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>1445</size>
            <attacher name="Dave Hyatt">hyatt</attacher>
            
              <data encoding="base64">SW5kZXg6IGh0bWwvSFRNTEJ1dHRvbkVsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGh0bWwvSFRN
TEJ1dHRvbkVsZW1lbnQuY3BwCShyZXZpc2lvbiAzMDA0NykKKysrIGh0bWwvSFRNTEJ1dHRvbkVs
ZW1lbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01NiwxOCArNTYsMzMgQEAgUmVuZGVyT2JqZWN0
KiBIVE1MQnV0dG9uRWxlbWVudDo6Y3JlYXRlUgogCiBjb25zdCBBdG9taWNTdHJpbmcmIEhUTUxC
dXR0b25FbGVtZW50Ojp0eXBlKCkgY29uc3QKIHsKLSAgICByZXR1cm4gZ2V0QXR0cmlidXRlKHR5
cGVBdHRyKTsKKyAgICBzd2l0Y2ggKG1fdHlwZSkgeworICAgICAgICBjYXNlIFNVQk1JVDogewor
ICAgICAgICAgICAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyBzdWJtaXQoInN1Ym1pdCIpOwor
ICAgICAgICAgICAgcmV0dXJuIHN1Ym1pdDsKKyAgICAgICAgfQorICAgICAgICBjYXNlIEJVVFRP
TjogeworICAgICAgICAgICAgc3RhdGljIGNvbnN0IEF0b21pY1N0cmluZyBidXR0b24oImJ1dHRv
biIpOworICAgICAgICAgICAgcmV0dXJuIGJ1dHRvbjsKKyAgICAgICAgfQorICAgICAgICBjYXNl
IFJFU0VUOiB7CisgICAgICAgICAgICBzdGF0aWMgY29uc3QgQXRvbWljU3RyaW5nIHJlc2V0KCJy
ZXNldCIpOworICAgICAgICAgICAgcmV0dXJuIHJlc2V0OworICAgICAgICB9CisgICAgfQorCisg
ICAgcmV0dXJuIGVtcHR5QXRvbTsKIH0KIAogdm9pZCBIVE1MQnV0dG9uRWxlbWVudDo6cGFyc2VN
YXBwZWRBdHRyaWJ1dGUoTWFwcGVkQXR0cmlidXRlKiBhdHRyKQogewogICAgIGlmIChhdHRyLT5u
YW1lKCkgPT0gdHlwZUF0dHIpIHsKLSAgICAgICAgaWYgKGVxdWFsSWdub3JpbmdDYXNlKGF0dHIt
PnZhbHVlKCksICJzdWJtaXQiKSkKLSAgICAgICAgICAgIG1fdHlwZSA9IFNVQk1JVDsKLSAgICAg
ICAgZWxzZSBpZiAoZXF1YWxJZ25vcmluZ0Nhc2UoYXR0ci0+dmFsdWUoKSwgInJlc2V0IikpCisg
ICAgICAgIGlmIChlcXVhbElnbm9yaW5nQ2FzZShhdHRyLT52YWx1ZSgpLCAicmVzZXQiKSkKICAg
ICAgICAgICAgIG1fdHlwZSA9IFJFU0VUOwogICAgICAgICBlbHNlIGlmIChlcXVhbElnbm9yaW5n
Q2FzZShhdHRyLT52YWx1ZSgpLCAiYnV0dG9uIikpCiAgICAgICAgICAgICBtX3R5cGUgPSBCVVRU
T047CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIG1fdHlwZSA9IFNVQk1JVDsKICAgICB9IGVs
c2UgaWYgKGF0dHItPm5hbWUoKSA9PSBhbGlnbkF0dHIpIHsKICAgICAgICAgLy8gRG9uJ3QgbWFw
ICdhbGlnbicgYXR0cmlidXRlLiAgVGhpcyBtYXRjaGVzIHdoYXQgRmlyZWZveCBhbmQgSUUgZG8s
IGJ1dCBub3QgT3BlcmEuCiAgICAgICAgIC8vIFNlZSBodHRwOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xMjA3MQo=
</data>
<flag name="review"
          id="8284"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>18965</attachid>
            <date>2008-02-06 12:09:57 -0800</date>
            <delta_ts>2008-02-06 12:09:57 -0800</delta_ts>
            <desc>more complete (untested) test case (drop in fast/dom/HTMLButtonElement/resources/)</desc>
            <filename>test.js</filename>
            <type>application/x-javascript</type>
            <size>1509</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">ZGVzY3JpcHRpb24oIlRlc3QgZ2V0dGluZy9zZXR0aW5nIHR5cGUgb2YgSFRNTEJ1dHRvbkVsZW1l
bnQiKQoKdmFyIGJ1dHRvbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImJ1dHRvbiIpOwpzaG91
bGRCZSgiYnV0dG9uLnR5cGUiLCAnc3VibWl0Jyk7CnNob3VsZEJlKCJidXR0b24uZ2V0QXR0cmli
dXRlKCd0eXBlJykiLCAnbnVsbCcpOwoKYnV0dG9uID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgi
YnV0dG9uIik7CmJ1dHRvbi50eXBlID0gImZvbyIKc2hvdWxkQmUoImJ1dHRvbi50eXBlIiwgJ3N1
Ym1pdCcpOwpzaG91bGRCZSgiYnV0dG9uLmdldEF0dHJpYnV0ZSgndHlwZScpIiwgJ251bGwnKTsK
YnV0dG9uID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYnV0dG9uIik7CmJ1dHRvbi5zZXRBdHRy
aWJ1dGUoJ3R5cGUnLCAiZm9vIik7CnNob3VsZEJlKCJidXR0b24udHlwZSIsICdzdWJtaXQnKTsK
c2hvdWxkQmUoImJ1dHRvbi5nZXRBdHRyaWJ1dGUoJ3R5cGUnKSIsICInZm9vJyIpOwoKYnV0dG9u
ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYnV0dG9uIik7CmJ1dHRvbi50eXBlID0gInN1Ym1p
dCI7CnNob3VsZEJlKCJidXR0b24udHlwZSIsICdzdWJtaXQnKTsKc2hvdWxkQmUoImJ1dHRvbi5n
ZXRBdHRyaWJ1dGUoJ3R5cGUnKSIsICInc3VibWl0JyIpOwpidXR0b24gPSBkb2N1bWVudC5jcmVh
dGVFbGVtZW50KCJidXR0b24iKTsKYnV0dG9uLnNldEF0dHJpYnV0ZSgndHlwZScsICJzdWJtaXQi
KTsKc2hvdWxkQmUoImJ1dHRvbi50eXBlIiwgJ3N1Ym1pdCcpOwpzaG91bGRCZSgiYnV0dG9uLmdl
dEF0dHJpYnV0ZSgndHlwZScpIiwgIidzdWJtaXQnIik7CgpidXR0b24gPSBkb2N1bWVudC5jcmVh
dGVFbGVtZW50KCJidXR0b24iKTsKYnV0dG9uLnR5cGUgPSAiYnV0dG9uIjsKc2hvdWxkQmUoImJ1
dHRvbi50eXBlIiwgJ2J1dHRvbicpOwpzaG91bGRCZSgiYnV0dG9uLmdldEF0dHJpYnV0ZSgndHlw
ZScpIiwgIididXR0b24nIik7CmJ1dHRvbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImJ1dHRv
biIpOwpidXR0b24uc2V0QXR0cmlidXRlKCd0eXBlJywgImJ1dHRvbiIpOwpzaG91bGRCZSgiYnV0
dG9uLnR5cGUiLCAnYnV0dG9uJyk7CnNob3VsZEJlKCJidXR0b24uZ2V0QXR0cmlidXRlKCd0eXBl
JykiLCAiJ2J1dHRvbiciKTsKCmJ1dHRvbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImJ1dHRv
biIpOwpidXR0b24udHlwZSA9ICJyZXNldCI7CnNob3VsZEJlKCJidXR0b24udHlwZSIsICdyZXNl
dCcpOwpzaG91bGRCZSgiYnV0dG9uLmdldEF0dHJpYnV0ZSgndHlwZScpIiwgIidyZXNldCciKTsK
YnV0dG9uID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYnV0dG9uIik7CmJ1dHRvbi5zZXRBdHRy
aWJ1dGUoJ3R5cGUnLCAicmVzZXQiKTsKc2hvdWxkQmUoImJ1dHRvbi50eXBlIiwgJ3Jlc2V0Jyk7
CnNob3VsZEJlKCJidXR0b24uZ2V0QXR0cmlidXRlKCd0eXBlJykiLCAiJ3Jlc2V0JyIpOwoKdmFy
IHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7
</data>

          </attachment>
      

    </bug>

</bugzilla>