<?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>7461</bug_id>
          
          <creation_ts>2006-02-25 01:51:24 -0800</creation_ts>
          <short_desc>Always encode the path part of an URI as UTF-8</short_desc>
          <delta_ts>2006-06-24 08:11:23 -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>Platform</component>
          <version>420+</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://www.w3.org/2001/08/iri-test/resumeHtmlImgSrcBase.html</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="Alexey Proskuryakov">ap</reporter>
          <assigned_to name="Alexey Proskuryakov">ap</assigned_to>
          <cc>nickshanks</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>33951</commentid>
    <comment_count>0</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2006-02-25 01:51:24 -0800</bug_when>
    <thetext>From &lt;https://bugzilla.mozilla.org/show_bug.cgi?id=261929&gt;.

WinIE 6 and Opera by default encode the path part of the URL as UTF-8, and use the page encoding only for the query part. A proposed standard on Internationalized Resource Identifiers &lt;http://www.w3.org/International/iri-edit/&gt; says that UTF-8 should be unconditionally used for all parts, and IE 7 beta preview2 reportedly works this way, intentionally or not.

Safari uses the page encoding even for the path part, matching Firefox (see the Mozilla bug mentioned above).

Besides the W3C test from the bug URL, the following page has been mentioned as an example: &lt;http://www.cdpkorea.com/zboard4/zboard.php?id=pdsboard&amp;page=1&amp;page_num=20&amp;select_arrange=headnum&amp;desc=&amp;sn=off&amp;ss=on&amp;sc=on&amp;keyword=&amp;no=43865&amp;category&gt; (there should be four photos, not four replacement images).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>46942</commentid>
    <comment_count>1</comment_count>
      <attachid>9001</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2006-06-24 05:45:09 -0700</bug_when>
    <thetext>Created attachment 9001
proposed fix

The major browsers disagree on many details of non-ASCII URI handling; also, both Firefox 3 and WinIE 7 include major changes to it. This patch makes a single modification that seems undisputed, and includes a test that verifies the status quo.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>46943</commentid>
    <comment_count>2</comment_count>
      <attachid>9001</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2006-06-24 05:46:17 -0700</bug_when>
    <thetext>Comment on attachment 9001
proposed fix

Please disregard the empty utf8-window-location.html in the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>46954</commentid>
    <comment_count>3</comment_count>
      <attachid>9001</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2006-06-24 07:39:33 -0700</bug_when>
    <thetext>Comment on attachment 9001
proposed fix

I wonder what the real-world impact of this is going to be. It&apos;s interesting hearing what the various browsers do, but I also wonder what the various websites do. Do we know any websites where the old Safari would work and the new one would fail?

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>46965</commentid>
    <comment_count>4</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2006-06-24 08:11:23 -0700</bug_when>
    <thetext>Committed revision 15010.

(In reply to comment #3)
The Mozilla bug mentions one page that needs this change, and has the following comment:
&quot;In the past, I saw many web sites asking their visitors to turn off &apos;Always send URLs in UTF-8&apos; in MSIE. These days, I rarely see it.&quot;

Sites that would regress are those running older Unices, with file systems not in UTF-8 (and without an Apache module recoding file paths). Since WinIE and Opera default to UTF-8 for paths, such sites are apparently rare. I do not know any examples.

Actually, I&apos;m surprised that we didn&apos;t have bug reports with this issue being a root cause (or are they all in Radar?). Myself, I did see people building in-house .asp pages with Windows Cyrillic charset and Russian file names; those won&apos;t work in current Firefox and Safari releases (I think; never had a chance to actually test that).</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>9001</attachid>
            <date>2006-06-24 05:45:09 -0700</date>
            <delta_ts>2006-06-24 07:39:33 -0700</delta_ts>
            <desc>proposed fix</desc>
            <filename>UTF8-paths.txt</filename>
            <type>text/plain</type>
            <size>4736</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvdXJpL3V0ZjgtcGF0aC5odG1sCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvdXJpL3V0ZjgtcGF0aC5odG1sCShyZXZpc2lv
biAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy91cmkvdXRmOC1wYXRoLmh0bWwJKHJldmlz
aW9uIDApCkBAIC0wLDAgKzEsMzYgQEAKKzxodG1sPgorPGhlYWQ+Cis8bWV0YSBodHRwLWVxdWl2
PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD13aW5kb3dzLTEyNTEi
PgorPC9oZWFkPgorPGJvZHk+CisKKzxzY3JpcHQ+CisgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0
Q29udHJvbGxlcikKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOwor
PC9zY3JpcHQ+CisKKzxwPlRlc3QgZm9yIDxhIGhyZWY9J2h0dHA6Ly9idWd6aWxsYS5vcGVuZGFy
d2luLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzQ2MSc+YnVnIDc0NjE8L2E+OiAKK0Fsd2F5cyBlbmNv
ZGUgdGhlIHBhdGggcGFydCBvZiBhbiBVUkkgYXMgVVRGLTg8L3A+CisKK1Rlc3QgdGhlIFVSTCBh
cyBpdCBpcyBwYXNzZWQgdG8gdGhlIHNlcnZlci4gV2luSUUgNiBhbmQgRmlyZWZveCAzLjBhIHJl
c3VsdHMgYXJlIGN1cnJlbnRseSBkaWZmcmVyZW50OgorSUUgdXNlcyB0aGUgdGFyZ2V0IGVuY29k
aW5nIGZvciB0aGUgcXVlcnkgcGF0aCwgd2hpbGUgRmlyZWZveCB1c2VzIHRoZSBwYWdlIGVuY29k
aW5nLiBBbHNvLCBXaW5JRSBkb2Vzbid0IHBlcmNlbnQtZW5jb2RlCit0aGUgcXVlcnkgcGF0aC48
YnI+CisiPHNjcmlwdCBpZD1zY3IxIHNyYz0iaW50ZXJjZXB0L3ByaW50L/Tg6esuanM/9+XpPezu
6SI+PC9zY3JpcHQ+IiAobm8gdGFyZ2V0IGNoYXJzZXQgc3BlY2lmaWVkKTxicj4KKyI8c2NyaXB0
IGlkPXNjcjIgY2hhcnNldD0id2luZG93cy0xMjUxIiBzcmM9ImludGVyY2VwdC9wcmludC/04Onr
LmpzP/fl6T3s7ukiPjwvc2NyaXB0PiIgKHRhcmdldCBjaGFyc2V0PXdpbmRvd3MtMTI1MSwgc2Ft
ZSBhcyBwYWdlKTxicj4KKyI8c2NyaXB0IGlkPXNjcjMgY2hhcnNldD0iaXNvLTg4NTktNSIgc3Jj
PSJpbnRlcmNlcHQvcHJpbnQv9ODp6y5qcz/35ek97O7pIj48L3NjcmlwdD4iICh0YXJnZXQgY2hh
cnNldD1pc28tODg1OS01KTxicj48YnI+CisKK1Nob3cgdGhlIHNvdXJjZSBhdHRyaWJ1dGUgb2Yg
dGhlIHNjcmlwdHMuIFdpbklFIDYgZG9lc24ndCB1c2UgcGVyY2VudCBlbmNvZGluZyBoZXJlLCB3
aGlsZSBGaXJlZm94IGRvZXMuPGJyPgorPHNjcmlwdD4KKyB0cnkgeworICBkb2N1bWVudC53cml0
ZSgnIicgKyBkb2N1bWVudC5zY3JpcHRzWzFdLnNyYyArICciPGJyPicpOworICBkb2N1bWVudC53
cml0ZSgnIicgKyBkb2N1bWVudC5zY3JpcHRzWzJdLnNyYyArICciPGJyPicpOworICBkb2N1bWVu
dC53cml0ZSgnIicgKyBkb2N1bWVudC5zY3JpcHRzWzNdLnNyYyArICciPGJyPicpOworIH0gY2F0
Y2ggKGV4KSB7CisgIGRvY3VtZW50LndyaXRlKCciJyArIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJzY3IxIikuc3JjICsgJyI8YnI+Jyk7CisgIGRvY3VtZW50LndyaXRlKCciJyArIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJzY3IyIikuc3JjICsgJyI8YnI+Jyk7CisgIGRvY3VtZW50LndyaXRl
KCciJyArIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzY3IzIikuc3JjICsgJyI8YnI+Jyk7Cisg
fQorPC9zY3JpcHQ+CisKKzwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAv
dGVzdHMvdXJpL3V0Zjgtd2luZG93LWxvY2F0aW9uLmh0bWwKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpJbmRleDogTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy91cmkvaW50ZXJjZXB0Ly5odGFjY2Vzcwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3VyaS9pbnRlcmNlcHQvLmh0YWNjZXNzCShyZXZpc2lv
biAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy91cmkvaW50ZXJjZXB0Ly5odGFjY2Vzcwko
cmV2aXNpb24gMCkKQEAgLTAsMCArMSwyIEBACitSZXdyaXRlRW5naW5lIG9uCitSZXdyaXRlUnVs
ZSBeLiogL3VyaS9yZXNvdXJjZXMvcHJpbnQtdXJpLnBocCBbTCxOU10KSW5kZXg6IExheW91dFRl
c3RzL2h0dHAvdGVzdHMvdXJpL3Jlc291cmNlcy9wcmludC11cmkucGhwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvdXJpL3Jlc291cmNlcy9wcmludC11cmkucGhwCShyZXZp
c2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy91cmkvcmVzb3VyY2VzL3ByaW50LXVy
aS5waHAJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNyBAQAorPD9waHAKKyAgICBoZWFkZXIoIkNv
bnRlbnQtVHlwZTogdGV4dC9qYXZhc2NyaXB0Iik7CisgICAgaGVhZGVyKCJFeHBpcmVzOiBUaHUs
IDAxIERlYyAyMDAzIDE2OjAwOjAwIEdNVFxuIik7CisgICAgaGVhZGVyKCJDYWNoZS1Db250cm9s
OiBuby1zdG9yZSwgbm8tY2FjaGUsIG11c3QtcmV2YWxpZGF0ZVxuIik7CisgICAgaGVhZGVyKCJQ
cmFnbWE6IG5vLWNhY2hlXG4iKTsKKyAgICBlY2hvICJkb2N1bWVudC53cml0ZSgnIiAuICRfU0VS
VkVSWydSRVFVRVNUX1VSSSddIC4gIicpOyI7Cis/PgpJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9L
VVJMLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL0tVUkwuY3BwCShyZXZpc2lv
biAxNTAwNCkKKysrIFdlYkNvcmUvcGxhdGZvcm0vS1VSTC5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTEzOTYsNDAgKzEzOTYsOCBAQCBzdGF0aWMgY2hhciAqZW5jb2RlUmVsYXRpdmVTdHJpbmcoY29u
c3QgCiAKICAgICBjaGFyICpzdHJCdWZmZXI7CiAKLSAgICBzdGF0aWMgY29uc3QgV2ViQ29yZTo6
VGV4dEVuY29kaW5nIHV0ZjhFbmNvZGluZyhVVEY4RW5jb2RpbmcpOwotCi0gICAgV2ViQ29yZTo6
VGV4dEVuY29kaW5nIHBhdGhFbmNvZGluZyA9IGVuY29kaW5nLmlzVmFsaWQoKSA/IGVuY29kaW5n
IDogdXRmOEVuY29kaW5nOwotICAgIFdlYkNvcmU6OlRleHRFbmNvZGluZyBvdGhlckVuY29kaW5n
ID0gcGF0aEVuY29kaW5nOwotICAgIAotICAgIC8vIEFsd2F5cyB1c2UgVVRGLTggZm9yIG1haWx0
byBVUkxzIGJlY2F1c2UgdGhhdCdzIHdoYXQgbWFpbCBhcHBsaWNhdGlvbnMgZXhwZWN0LgotICAg
IC8vIEFsd2F5cyB1c2UgVVRGLTggZm9yIHBhdGhzIGluIGZpbGUgYW5kIGhlbHAgVVJMcywgc2lu
Y2UgdGhleSBhcmUgbG9jYWwgZmlsZXN5c3RlbSBwYXRocywKLSAgICAvLyBhbmQgaGVscCBjb250
ZW50IGlzIG9mdGVuIGRlZmluZWQgd2l0aCB0aGlzIGluIG1pbmQsIGJ1dCB1c2UgbmF0aXZlIGVu
Y29kaW5nIGZvciB0aGUKLSAgICAvLyBub24tcGF0aCBwYXJ0cyBvZiB0aGUgVVJMLgotICAgIGlm
IChwYXRoRW5jb2RpbmcgIT0gdXRmOEVuY29kaW5nKSB7Ci0gICAgICAgIERlcHJlY2F0ZWRTdHJp
bmcgcHJvdG9jb2w7Ci0gICAgICAgIGlmIChyZWwubGVuZ3RoKCkgPiAwICYmIGlzU2NoZW1lRmly
c3RDaGFyKHJlbC5hdCgwKS5sYXRpbjEoKSkpIHsKLSAgICAgICAgICAgIGZvciAodW5zaWduZWQg
aSA9IDE7IGkgPCByZWwubGVuZ3RoKCk7IGkrKykgewotICAgICAgICAgICAgICAgIGNoYXIgcCA9
IHJlbC5hdChpKS5sYXRpbjEoKTsKLSAgICAgICAgICAgICAgICBpZiAocCA9PSAnOicpIHsKLSAg
ICAgICAgICAgICAgICAgICAgcHJvdG9jb2wgPSByZWwubGVmdChpKTsKLSAgICAgICAgICAgICAg
ICAgICAgYnJlYWs7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGlmICghaXNT
Y2hlbWVDaGFyKHApKSB7Ci0gICAgICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAg
ICAgIH0KLSAgICAgICAgICAgIH0KLSAgICAgICAgfQotICAgICAgICBpZiAoIXByb3RvY29sKSB7
Ci0gICAgICAgICAgICBwcm90b2NvbCA9IGJhc2UucHJvdG9jb2woKTsKLSAgICAgICAgfQotICAg
ICAgICBwcm90b2NvbCA9IHByb3RvY29sLmxvd2VyKCk7Ci0gICAgICAgIGlmIChwcm90b2NvbCA9
PSAiZmlsZSIgfHwgcHJvdG9jb2wgPT0gImhlbHAiKSB7Ci0gICAgICAgICAgICBwYXRoRW5jb2Rp
bmcgPSB1dGY4RW5jb2Rpbmc7Ci0gICAgICAgIH0gZWxzZSBpZiAocHJvdG9jb2wgPT0gIm1haWx0
byIpIHsKLSAgICAgICAgICAgIHBhdGhFbmNvZGluZyA9IHV0ZjhFbmNvZGluZzsKLSAgICAgICAg
ICAgIG90aGVyRW5jb2RpbmcgPSB1dGY4RW5jb2Rpbmc7Ci0gICAgICAgIH0KLSAgICB9CisgICAg
V2ViQ29yZTo6VGV4dEVuY29kaW5nIHBhdGhFbmNvZGluZyhVVEY4RW5jb2RpbmcpOworICAgIFdl
YkNvcmU6OlRleHRFbmNvZGluZyBvdGhlckVuY29kaW5nID0gZW5jb2RpbmcuaXNWYWxpZCgpID8g
ZW5jb2RpbmcgOiBXZWJDb3JlOjpUZXh0RW5jb2RpbmcoVVRGOEVuY29kaW5nKTsKICAgICAKICAg
ICBpbnQgcGF0aEVuZCA9IC0xOwogICAgIGlmIChwYXRoRW5jb2RpbmcgIT0gb3RoZXJFbmNvZGlu
Zykgewo=
</data>
<flag name="review"
          id="2658"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>