When exporting HTML for the clipboard or drag/drop, the charset isn't indicated. The Windows clipboard format is explicitly documented as being UTF-8, and all Linux apps assume UTF-8. On the Mac, though, unless otherwise indicated, ISO/IEC 8859-1 is assumed, which is wrong.
Created attachment 32713 [details] Patch to mark clipboard HTML as UTF-8 This is corresponding to http://codereview.chromium.org/149414
Comment on attachment 32713 [details] Patch to mark clipboard HTML as UTF-8 > Index: WebCore/ChangeLog ... > +2009-07-14 Avi Drissman <avi@chromium.org> > + > + Reviewed by NOBODY (OOPS!). > + > + Explicitly mark the HTML generated for the Mac as being UTF-8 encoded. > + The Windows clipboard format is explicitly documented as being UTF-8, > + and all Linux apps assume UTF-8. On the Mac, though, unless otherwise > + indicated, ISO/IEC 8859-1 is assumed, which is wrong. nit: Your ChangeLog should include a link to this bug. Otherwise, R=me
Created attachment 32718 [details] Links to the bug now; no other changes
nit: a bit of change in the comment and the bug description is necessary. Judging from the way it's broken without your patch, what's assumed is not ISO-8859-1 nor MacRoman but windows-1252 (it's a bit odd to see that on Mac OS X :-)). For instance, U+2018 (Left Single Quotation Mark) whose UTF-8 representation is "0xE2, 0x80, 0x98" is converted to "U+00E2, U+20AC, U+02DC". If it's interpreted as ISO-8859-1, it would be converted to "U+00E2, U+0080, U+0098".
Comment on attachment 32718 [details] Links to the bug now; no other changes r- for revised changelog per feedback from jshin. i'll commit the next patch. -darin
Created attachment 32724 [details] New version; addresses jshin's comments
Landed as: http://trac.webkit.org/changeset/45878 (The patch didn't apply cleanly... hand-editing in the ChangeLog portion of the diff?)
(In reply to comment #7) > (The patch didn't apply cleanly... hand-editing in the ChangeLog portion of the > diff?) Yes, that's the precise reason. Bad me; I'll not do that next time.