<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://www.w3.org/Bugs/Public/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4"
          urlbase="https://www.w3.org/Bugs/Public/"
          
          maintainer="sysbot+bugzilla@w3.org"
>

    <bug>
          <bug_id>9628</bug_id>
          
          <creation_ts>2010-04-30 14:49:48 +0000</creation_ts>
          <short_desc>Algorithm for detecting the charset=&quot;&quot; parameter.</short_desc>
          <delta_ts>2011-03-11 18:33:43 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>HTML WG</product>
          <component>pre-LC1 HTML5 spec (editor: Ian Hickson)</component>
          <version>unspecified</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Windows NT</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>WONTFIX</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>NE, TrackerIssue</keywords>
          <priority>P2</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Julian Reschke">julian.reschke</reporter>
          <assigned_to name="Ian &apos;Hixie&apos; Hickson">ian</assigned_to>
          <cc>ap</cc>
    
    <cc>ddkilzer</cc>
    
    <cc>ian</cc>
    
    <cc>mike</cc>
    
    <cc>public-html-admin</cc>
    
    <cc>public-html-wg-issue-tracking</cc>
    
    <cc>rubys</cc>
          
          <qa_contact name="HTML WG Bugzilla archive list">public-html-bugzilla</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>35329</commentid>
    <comment_count>0</comment_count>
    <who name="Julian Reschke">julian.reschke</who>
    <bug_when>2010-04-30 14:49:48 +0000</bug_when>
    <thetext>From http://dev.w3.org/html5/spec/infrastructure.html#content-type-sniffing:

&quot;The algorithm for extracting an encoding from a Content-Type, given a string s, is as follows. It either returns an encoding or nothing.

   1.

      Find the first seven characters in s that are an ASCII case-insensitive match for the word &quot;charset&quot;. If no such match is found, return nothing.
   2.

      Skip any U+0009, U+000A, U+000C, U+000D, or U+0020 characters that immediately follow the word &quot;charset&quot; (there might not be any).
   3.

      If the next character is not a U+003D EQUALS SIGN (&apos;=&apos;), return nothing and abort these steps.
   4.

      Skip any U+0009, U+000A, U+000C, U+000D, or U+0020 characters that immediately follow the equals sign (there might not be any).
   5.

      Process the next character as follows:

      If it is a U+0022 QUOTATION MARK (&apos;&quot;&apos;) and there is a later U+0022 QUOTATION MARK (&apos;&quot;&apos;) in s
      If it is a U+0027 APOSTROPHE (&quot;&apos;&quot;) and there is a later U+0027 APOSTROPHE (&quot;&apos;&quot;) in s
          Return the encoding corresponding to the string between this character and the next earliest occurrence of this character.
      If it is an unmatched U+0022 QUOTATION MARK (&apos;&quot;&apos;)
      If it is an unmatched U+0027 APOSTROPHE (&quot;&apos;&quot;)
      If there is no next character
          Return nothing.
      Otherwise
          Return the encoding corresponding to the string from this character to the first U+0009, U+000A, U+000C, U+000D, U+0020, or U+003B character or the end of s, whichever comes first.

Note: This requirement is a willful violation of the HTTP specification, motivated by the need for backwards compatibility with legacy content. [HTTP]&quot;

General problems:

(1) This algorithm doesn&apos;t seem to be used.

(2) It&apos;s VERY unfriendly to the reader to claim that there&apos;s a violation of the HTTP spec without saying what it is.

Specific problems:

(3) The algorithm requires allowing single quotes; this is indeed a violation of the HTTP syntax. I just checked with IE8; it doesn&apos;t allow single quotes. Thus, the claim &quot;needed for backwards compatibility&quot; appears to be incorrect.

(4) The spec also violates HTTP in that the backslash character inside quoted values isn&apos;t treated properly. If this is needed &quot;for compatibility&quot;, this should be backed up with data.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>35331</commentid>
    <comment_count>1</comment_count>
    <who name="Julian Reschke">julian.reschke</who>
    <bug_when>2010-04-30 16:45:16 +0000</bug_when>
    <thetext>(5) The algorithm fails to parse headers that have an additional parameter starting with the letters &quot;charset&quot;, such as 

  Content-Type: text/plain; charsetfoo=bar; charset=UTF-8

(or a preceding parameter that happens to have &quot;charset&quot; as value).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>35512</commentid>
    <comment_count>2</comment_count>
    <who name="Julian Reschke">julian.reschke</who>
    <bug_when>2010-05-07 17:03:55 +0000</bug_when>
    <thetext>(In reply to comment #0)
&gt; General problems:
&gt; 
&gt; (1) This algorithm doesn&apos;t seem to be used.

OK, I just noticed that the back ref tool top only works as expected when using the single-page version. So this is used, and thus fixing the other issues is even more important.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>37361</commentid>
    <comment_count>3</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2010-08-11 19:49:27 +0000</bug_when>
    <thetext>Safari&apos;s (closed source) network back-end parses Content-Type for charset in a manner that&apos;s different from both RFC2616 and the current HTML5 spec. We also have a separate parser in WebKit that&apos;s used in a limited set of circumstances (only for XMLHttpRequest.overrideMimeType and for correcting a MIME type set via XMLHttpRequest.serRequestHeader).

But I am no aware of any evidence against following RFC2616 to the letter when getting charset out of Content-Type.

&gt;  Content-Type: text/plain; charsetfoo=bar; charset=UTF-8

Also, this algorithm fails to ignore charset in &quot;Content-Type: text/plain; foocharset=UTF-8&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>37495</commentid>
    <comment_count>4</comment_count>
    <who name="Ian &apos;Hixie&apos; Hickson">ian</who>
    <bug_when>2010-08-16 21:45:19 +0000</bug_when>
    <thetext>(1) It&apos;s used in several places, click the name of the algorithm for a list.

(2) Isn&apos;t the violation pretty obvious? I don&apos;t really know how to begin describing it, I mean, the whole algorithm is in its entirety one big violation, no?

(3) It is my understanding that, notwithstanding your experience with IE, there are pages depending on this. However, I may be mistaken. If you have detailed research on this topic, that would be most welcome. I&apos;m happy to change this algorithm in response to such data.

(4, 5, etc) The algorithm violates HTTP in a huge bunch of ways, backslashes aren&apos;t the half of it.

If I recall correctly, this algorithm was based directly on one of the prominent implementations. I do not recall which. I&apos;m happy to update it if there is clear evidence that the current algorithm is not compatible with legacy content.

As a general note, please file just one bug per issue. Thanks.

EDITOR&apos;S RESPONSE: This is an Editor&apos;s Response to your comment. If you are satisfied with this response, please change the state of this bug to CLOSED. If you have additional information and would like the editor to reconsider, please reopen this bug. If you would like to escalate the issue to the full HTML Working Group, please add the TrackerRequest keyword to this bug, and suggest title and text for the tracker issue; or you may create a tracker issue yourself, if you are able to do so. For more details, see this document:
   http://dev.w3.org/html5/decision-policy/decision-policy.html

Status: Rejected
Change Description: no spec change
Rationale: Insufficient data.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>37543</commentid>
    <comment_count>5</comment_count>
    <who name="Julian Reschke">julian.reschke</who>
    <bug_when>2010-08-17 06:21:39 +0000</bug_when>
    <thetext>If you do believe that you need to &quot;willfully&quot; violate the spec, then it&apos;s you who needs to back this up with data.

I have already shown that one aspect (single quotes) isn&apos;t supported in IE8, Alexey has stated that they do not implement this either (more data on this would indeed be useful), and also the algorithm fails to properly parse valid values.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>37551</commentid>
    <comment_count>6</comment_count>
      <attachid>908</attachid>
    <who name="Julian Reschke">julian.reschke</who>
    <bug_when>2010-08-17 11:39:35 +0000</bug_when>
    <thetext>Created attachment 908
content type with encoding in single quotes

&quot;asis&quot; document to be served with httpd/mod_asis</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>37552</commentid>
    <comment_count>7</comment_count>
      <attachid>909</attachid>
    <who name="Julian Reschke">julian.reschke</who>
    <bug_when>2010-08-17 11:40:20 +0000</bug_when>
    <thetext>Created attachment 909
content type with encoding in double quotes

&quot;asis&quot; document to be served with httpd/mod_asis</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>37553</commentid>
    <comment_count>8</comment_count>
    <who name="Julian Reschke">julian.reschke</who>
    <bug_when>2010-08-17 11:41:45 +0000</bug_when>
    <thetext>(In reply to comment #4)
&gt; (3) It is my understanding that, notwithstanding your experience with IE, there
&gt; are pages depending on this. However, I may be mistaken. If you have detailed
&gt; research on this topic, that would be most welcome. I&apos;m happy to change this
&gt; algorithm in response to such data.

I just added two test cases that show that IE8 does not parse encoding in single quotes, as required by the spec. Thus, violating the spec is not needed for &quot;web compatibility&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>37556</commentid>
    <comment_count>9</comment_count>
    <who name="Julian Reschke">julian.reschke</who>
    <bug_when>2010-08-17 12:02:41 +0000</bug_when>
    <thetext>(In reply to comment #8)
&gt; (In reply to comment #4)
&gt; &gt; (3) It is my understanding that, notwithstanding your experience with IE, there
&gt; &gt; are pages depending on this. However, I may be mistaken. If you have detailed
&gt; &gt; research on this topic, that would be most welcome. I&apos;m happy to change this
&gt; &gt; algorithm in response to such data.
&gt; 
&gt; I just added two test cases that show that IE8 does not parse encoding in
&gt; single quotes, as required by the spec. Thus, violating the spec is not needed
&gt; for &quot;web compatibility&quot;.

Where with &quot;the spec&quot; I mean RFC 2616.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>37557</commentid>
    <comment_count>10</comment_count>
      <attachid>910</attachid>
    <who name="Julian Reschke">julian.reschke</who>
    <bug_when>2010-08-17 12:28:21 +0000</bug_when>
    <thetext>Created attachment 910
test case with charsetfoo parameter

&quot;asis&quot; document to be served with httpd/mod_asis

This test case shows that Firefox ignores an unknown parameter, even though it starts with the sequence &quot;charset&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>39855</commentid>
    <comment_count>11</comment_count>
    <who name="Ian &apos;Hixie&apos; Hickson">ian</who>
    <bug_when>2010-09-29 02:00:34 +0000</bug_when>
    <thetext>None of these tests are testing what the spec is doing here. This has nothing to do with HTTP. If you click the name of the algorithm you will get a list of the places that use this.

Since I was looking at this part of the spec, though, I went ahead and redid a round of testing to see how the browsers were doing today. I didn&apos;t have IE handy, but looking at the other major browsers, it looks like all but Firefox skip past unknown parameters, so I&apos;ve changed the spec to support that.

WebKit and Opera&apos;s main sources of bugs are that they do extra trimming that the spec doesn&apos;t expect. Both also do weird things with unmatched single quotes that they don&apos;t do with unmatched double quotes, which is weird. WebKit also seems to have trouble with &quot;&amp;quot;&quot;. Gecko doesn&apos;t drop charset declarations when they have unmatched quotes, but otherwise seems to match the spec. I haven&apos;t changed the spec to match these quirks, since it&apos;s not clear whether pages depend on them or not.

My test suite is here, in case anyone can test IE9:
   http://www.hixie.ch/tests/adhoc/html/parsing/encoding/all.html


EDITOR&apos;S RESPONSE: This is an Editor&apos;s Response to your comment. If you are satisfied with this response, please change the state of this bug to CLOSED. If you have additional information and would like the editor to reconsider, please reopen this bug. If you would like to escalate the issue to the full HTML Working Group, please add the TrackerRequest keyword to this bug, and suggest title and text for the tracker issue; or you may create a tracker issue yourself, if you are able to do so. For more details, see this document:
   http://dev.w3.org/html5/decision-policy/decision-policy.html

Status: Rejected
Change Description: no spec change
Rationale: No new information was provided by the reporter since the rejection in comment 4.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>39856</commentid>
    <comment_count>12</comment_count>
    <who name="">contributor</who>
    <bug_when>2010-09-29 02:03:34 +0000</bug_when>
    <thetext>Checked in as WHATWG revision r5546.
Check-in comment: Update to better match UAs.
http://html5.org/tools/web-apps-tracker?from=5545&amp;to=5546</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>39878</commentid>
    <comment_count>13</comment_count>
    <who name="Julian Reschke">julian.reschke</who>
    <bug_when>2010-09-29 07:03:54 +0000</bug_when>
    <thetext>First of all: &quot;Status: rejected&quot; is very very misleading, as you indeed fix one of the problems I reported (the one in comment 1, issue (5)).

I&apos;ll review the other changes later on, and will probably reopen the bug as you did not address issue (2) (for instance).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>39919</commentid>
    <comment_count>14</comment_count>
    <who name="Julian Reschke">julian.reschke</who>
    <bug_when>2010-09-29 09:54:48 +0000</bug_when>
    <thetext>(In reply to comment #11)
&gt; My test suite is here, in case anyone can test IE9:
&gt;    http://www.hixie.ch/tests/adhoc/html/parsing/encoding/all.html

12.test 012: expected Windows-1254; used Windows-1252&lt;!DOCTYPE HTML&gt;
&lt;meta http-equiv=&quot;Content-Type &quot; content=&quot;text/html; charset=ISO-8859-9&quot;&gt;
13.test 013: expected Windows-1254; used Windows-1252&lt;!DOCTYPE HTML&gt;
&lt;meta content=&quot;text/html; charset=ISO-8859-9&quot; http-equiv=&quot;Content-Type &quot;&gt;
14.test 014: expected Windows-1254; used Windows-1252&lt;!DOCTYPE HTML&gt;
&lt;meta http-equiv=&quot;Content-Type&gt;&quot; content=&quot;text/html; charset=ISO-8859-9&quot;&gt;
15.test 015: expected Windows-1254; used Windows-1252&lt;!DOCTYPE HTML&gt;
&lt;meta content=&quot;text/html; charset=ISO-8859-9&quot; http-equiv=&quot;Content-Type&gt;&quot;&gt;
16.test 016: expected Windows-1254; used Windows-1252&lt;!DOCTYPE HTML&gt;
&lt;meta http-equiv=&quot;Content-Style-Type&quot; content=&quot;text/html; charset=ISO-8859-9&quot;&gt;
17.test 017: expected Windows-1254; used Windows-1252&lt;!DOCTYPE HTML&gt;
&lt;meta content=&quot;text/html; charset=ISO-8859-9&quot; http-equiv=&quot;Content-Style-Type&quot;&gt;
18.test 018: expected Windows-1254; used Windows-1252&lt;!DOCTYPE HTML&gt;
&lt;meta name=&quot;Content-Style-Type&quot; content=&quot;text/html; charset=ISO-8859-9&quot;&gt;
19.test 019: expected Windows-1254; used Windows-1252&lt;!DOCTYPE HTML&gt;
&lt;meta content=&quot;text/html; charset=ISO-8859-9&quot; name=&quot;Content-Style-Type&quot;&gt;
20.test 020: expected Windows-1254; used Windows-1252&lt;!DOCTYPE HTML&gt;
&lt;meta content=&quot;text/html; charset=ISO-8859-9&quot;&gt;
21.test 021: expected Windows-1254; used Windows-1252&lt;!DOCTYPE HTML&gt;
&lt;meta content=&quot; text/html; charset = ISO-8859-9 &quot;&gt;
22.test 022: expected Windows-1254; used Windows-1252&lt;!DOCTYPE HTML&gt;
&lt;meta content=&quot;
text/html; charset=ISO-8859-9
&quot;&gt;
26.test 026: expected Windows-1252; used Windows-1254&lt;!DOCTYPE HTML&gt;
&lt;meta charset=ISO-8859-9&quot;&gt;
&lt;p&gt;&quot;&lt;/p&gt;
56.test 056: expected Windows-1254; used Windows-1252&lt;!DOCTYPE HTML&gt;
&lt;script&gt;document.write(&apos;&lt;meta charset=&quot;ISO-8859-&apos; + &apos;9&quot;&gt;&apos;)&lt;/script&gt;
57.test 057: expected Windows-1254; used Windows-1252&lt;!DOCTYPE HTML&gt;
&lt;script&gt;var s = &apos;9&quot;&gt;&apos;; document.write(&apos;&lt;meta charset=&quot;ISO-8859-&apos; + s)&lt;/script&gt;
58.test 058: expected Windows-1254; used Windows-1252&lt;!DOCTYPE HTML&gt;
&lt;script&gt;document.write(&apos;&lt;meta charset=&quot;ISO-8859-9&quot;&gt;&apos;)&lt;/script&gt;
59.test 059: expected Windows-1254; used Windows-1252&lt;!DOCTYPE HTML&gt;
&lt;script type=&quot;text/plain&quot;&gt;&lt;meta charset=&quot;ISO-8859-9&quot;&gt;&lt;/script&gt;
60.test 060: expected Windows-1254; used Windows-1252&lt;!DOCTYPE HTML&gt;
&lt;style type=&quot;text/plain&quot;&gt;&lt;meta charset=&quot;ISO-8859-9&quot;&gt;&lt;/style&gt;
65.test 065: expected Windows-1252; used Windows-1254&lt;!DOCTYPE HTML&gt;
&lt;meta charset=&quot; 	
ISO-8859-9	 &quot;&gt;
67.test 067: expected Windows-1252; used Windows-1254&lt;!DOCTYPE HTML&gt;
&lt;meta charset=&quot; ISO-8859-9 &quot;&gt;
69.test 069: expected Windows-1252; used Windows-1254&lt;!DOCTYPE HTML&gt;
&lt;meta http-equiv=&quot;Content-Type&quot; charset=&quot; 	
ISO-8859-9	 &quot;&gt;
71.test 071: expected Windows-1252; used Windows-1254&lt;!DOCTYPE HTML&gt;
&lt;meta http-equiv=&quot;Content-Type&quot; charset=&quot; ISO-8859-9 &quot;&gt;
74.test 074: expected Windows-1252; used Windows-1254&lt;!DOCTYPE HTML&gt;
&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html;charset=&amp;quot;ISO-8859-9&quot;&gt;
75.test 075: expected Windows-1254; used Windows-1252&lt;!DOCTYPE HTML&gt;
&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html;charset=&apos;ISO-8859-9&apos;&quot;&gt;
77.test 077: expected Windows-1254; used Windows-1252&lt;!DOCTYPE HTML&gt;
&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html;charset=&apos;ISO-8859-9&apos;;&quot;&gt;
82.test 082: expected Windows-1252; used Windows-1254&lt;!DOCTYPE HTML&gt;
&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html;charsetx=ISO-8859-9&quot;&gt;
86.test 086: expected Windows-1254; used Windows-1252&lt;!DOCTYPE HTML&gt;
&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html charset=ISO-8859-9&quot;&gt;
88.test 088: expected Windows-1254; used Windows-1252&lt;!DOCTYPE HTML&gt;
&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html charset = ISO-8859-9&quot;&gt;
89.test 089: expected Windows-1254; used Windows-1252&lt;!DOCTYPE HTML&gt;
&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html charset = &apos;ISO-8859-9&apos;&quot;&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>42504</commentid>
    <comment_count>15</comment_count>
    <who name="Julian Reschke">julian.reschke</who>
    <bug_when>2010-11-13 17:34:47 +0000</bug_when>
    <thetext>(In reply to comment #3)
&gt; Safari&apos;s (closed source) network back-end parses Content-Type for charset in a
&gt; manner that&apos;s different from both RFC2616 and the current HTML5 spec. We also
&gt; have a separate parser in WebKit that&apos;s used in a limited set of circumstances
&gt; (only for XMLHttpRequest.overrideMimeType and for correcting a MIME type set
&gt; via XMLHttpRequest.serRequestHeader).
&gt; 
&gt; But I am no aware of any evidence against following RFC2616 to the letter when
&gt; getting charset out of Content-Type.
&gt; 
&gt; &gt;  Content-Type: text/plain; charsetfoo=bar; charset=UTF-8
&gt; 
&gt; Also, this algorithm fails to ignore charset in &quot;Content-Type: text/plain;
&gt; foocharset=UTF-8&quot;.

Indeed, even after the change.

Re-opening.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>42508</commentid>
    <comment_count>16</comment_count>
    <who name="Ian &apos;Hixie&apos; Hickson">ian</who>
    <bug_when>2010-11-13 21:24:11 +0000</bug_when>
    <thetext>EDITOR&apos;S RESPONSE: This is an Editor&apos;s Response to your comment. If you are satisfied with this response, please change the state of this bug to CLOSED. If you have additional information and would like the editor to reconsider, please reopen this bug. If you would like to escalate the issue to the full HTML Working Group, please add the TrackerRequest keyword to this bug, and suggest title and text for the tracker issue; or you may create a tracker issue yourself, if you are able to do so. For more details, see this document:
   http://dev.w3.org/html5/decision-policy/decision-policy.html

Status: Rejected
Change Description: no spec change
Rationale: The spec as written is based on a huge test suite and is intended to most closely match the majority of browsers. If you care more about matching a ridiculously complex spec than about minimising implementation burden then raise an issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>42863</commentid>
    <comment_count>17</comment_count>
    <who name="Sam Ruby">rubys</who>
    <bug_when>2010-11-29 19:45:00 +0000</bug_when>
    <thetext>http://www.w3.org/html/wg/tracker/issues/148</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>46637</commentid>
    <comment_count>18</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-03-11 18:33:43 +0000</bug_when>
    <thetext>&gt; I have already shown that one aspect (single quotes) isn&apos;t supported in IE8, Alexey has stated that they do not implement this either

I&apos;ve been commenting about HTTP Content-Type header field parsing. WebKit parsing of META is different, and it currently supports single quotes (the code is at &lt;http://trac.webkit.org/browser/trunk/Source/WebCore/html/parser/HTMLMetaCharsetParser.cpp#L57&gt;). I don&apos;t know if there is a significant amount of content relying on that.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>908</attachid>
            <date>2010-08-17 11:39:35 +0000</date>
            <delta_ts>2010-08-17 11:39:35 +0000</delta_ts>
            <desc>content type with encoding in single quotes</desc>
            <filename>ct1.asis</filename>
            <type>text/plain</type>
            <size>62</size>
            <attacher name="Julian Reschke">julian.reschke</attacher>
            
              <data encoding="base64">Q29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PSdVVEYtOCcNCg0KVW1sYXV0ZTogw6TD
tsO8DQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>909</attachid>
            <date>2010-08-17 11:40:20 +0000</date>
            <delta_ts>2010-08-17 11:40:20 +0000</delta_ts>
            <desc>content type with encoding in double quotes</desc>
            <filename>ct2.asis</filename>
            <type>text/plain</type>
            <size>62</size>
            <attacher name="Julian Reschke">julian.reschke</attacher>
            
              <data encoding="base64">Q29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PSJVVEYtOCINCg0KVW1sYXV0ZTogw6TD
tsO8DQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>910</attachid>
            <date>2010-08-17 12:28:21 +0000</date>
            <delta_ts>2010-08-17 12:28:21 +0000</delta_ts>
            <desc>test case with charsetfoo parameter</desc>
            <filename>ct-morep.asis</filename>
            <type>text/plain</type>
            <size>76</size>
            <attacher name="Julian Reschke">julian.reschke</attacher>
            
              <data encoding="base64">Q29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0Zm9vPWJhcjsgY2hhcnNldD1VVEYtOA0K
DQpVbWxhdXRlOiDDpMO2w7wNCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>