From: Junio C Hamano Date: Thu, 09 Nov 2006 00:15:18 GMT Subject: Re: [PATCH] gitweb: protect blob and diff output lines from controls. Message-ID: <7v1wodqxux.fsf@assigned-by-dhcp.cox.net> In-Reply-To: <200611090104.32247.jnareb@gmail.com> Jakub Narebski writes: > 1. First, esc_path should _not_ use subroutine which does it's own > contol characters escaping. That was also a mistake I made in my patch. > Perhaps we should have some quot_html or to_html subroutine which does > _only_ to_utf8 (decode from Encode module), escapeHTML and optionally > s/ / /g conversion. I hated that original arrangement, but I do not see anything obviously wrong in the output with the patch you are responding to. Except that git_blame2 is missing a chomp() on "my $data" after finishing the metainfo loop, that is. > 2. In my opinion CS is better than CEC for quoting/escaping control > characters in the "bulk" output, namely "blob" output and "text > diff" (patchset body) output. CEC is better for pathnames (which must > fit in one line), and perhaps other one-liners; perhaps not. I am more for code reuse and consistency. If "^L" is more readable then we should consistently use it for both contents and pathnames. One of my tests were a symlink that points at a funny filename ;-). > BTW. what had happened with to_qtext post? Sorry, I don't recall.