Author drj
Recipients drj, georg.brandl
Date 2008-10-09.09:27:53
SpamBayes Score 1.32532e-09
Marked as misclassified No
Message-id <1223544475.01.0.800485054454.issue4085@psf.upfronthosting.co.za>
In-reply-to
Content
Consider the web page:

http://www.python.org/doc/2.5.2/whatsnew/acks.html

(the problem appears throughout the whatsnew document, but that page 
happens to be short and have more than one instance).

On my browser, Safari 3.1.2 on Intel OS X 10.4.11, Martin von Löwis has 
his name corrupted, as does Lars Gustäbel.

The problem seems to be because whilst the page is encoded in utf-8 the 
web server does not transmit a Content-Type header that specifies utf-8:

$ curl -I http://www.python.org/doc/2.5.2/whatsnew/acks.html
HTTP/1.1 200 OK
Date: Thu, 09 Oct 2008 08:51:22 GMT
Server: Apache/2.2.3 (Debian) DAV/2 SVN/1.4.2 mod_ssl/2.2.3 
OpenSSL/0.9.8c mod_wsgi/2.0 Python/2.4.4
Last-Modified: Fri, 22 Feb 2008 12:58:18 GMT
ETag: "12c008-1336-c6b00e80"
Accept-Ranges: bytes
Content-Length: 4918
Content-Type: text/html

Shouldn't that be "Content-Type: text/html; charset=UTF-8"? Yeah, 
probably.  Shouldn't the browser be using the meta tag in the HTML file 
itself?  Probably, but your broken HTML is preventing Safari from 
parsing the <meta> tag correctly.

Specifically:

$ curl http://www.python.org/doc/2.5.2/whatsnew/acks.html | grep 
rel=.first.
<link rel="first" href="whatsnew25.html" title='What's new in python 
2.5' />

The title attribute of that link element is incorrect.  It features a 
single-quote inside a single-quoted string.  Oopsie.  I don't think 
Safari should be so mean, but bad HTML is bad HTML.

Taking a local copy and fixing that title attribute (by using double 
quotes for example) causes the page to render just fine.
History
Date User Action Args
2008-10-09 09:27:55drjsetrecipients: + drj, georg.brandl
2008-10-09 09:27:55drjsetmessageid: <1223544475.01.0.800485054454.issue4085@psf.upfronthosting.co.za>
2008-10-09 09:27:54drjlinkissue4085 messages
2008-10-09 09:27:53drjcreate