To reproduce, compare <https://bugs.webkit.org/attachment.cgi?id=120812&action=prettypatch> to <https://bugs.webkit.org/attachment.cgi?id=120812>. Notice that every apostrophe in the latter appears as â in the former. The plain diff is encoded as and served as UTF-8, with the apostrophe encoded as E2 80 99. In the formatted diff, each on of those bytes appears to have been interpreted as Latin-1 and then encoded as UTF-8, resulting in the sequence C3 A2 C2 80 C2 99.
Bugzilla.pm: > sub init_page { > (binmode STDOUT, ':utf8') if Bugzilla->params->{'utf8'}; attachment.cgi sub prettyPatch: > open2(\*OUT, \*IN, "/usr/bin/ruby", "-I", "PrettyPatch", "PrettyPatch/prettify.rb", "--html-exceptions"); > $ENV{'PATH'} = $orig_path; > print IN $attachment->data; > close(IN); > while (<OUT>) { > print; > } > close(OUT); I guess OUT works as binary, and "print" converts a binary line to UTF-8 because of binmode. Probably utf8::decode($_); before print fixes this?
*** This bug has been marked as a duplicate of bug 45760 ***
This is not fixed.
The apostrophes look correct to me now. Attaching screenshot.
Created attachment 456319 [details] Screenshot
(In reply to Myles C. Maxfield from comment #4) > The apostrophes look correct to me now. Attaching screenshot. Good to see! Do you think this was fixed along with bug 238630?
Yes.
*** This bug has been marked as a duplicate of bug 238630 ***