Thread (6 messages) flat view 6 messages, 3 authors, 2016-06-15

Re: [PATCH] gitweb: Fix chop_str not to cut in middle of utf8 multibyte chars.

From: Jakub Narebski <hidden>
Date: 2016-06-15 22:44:38

On Wed, 21 May 2008, Anders Waldenborg wrote:
Junio C Hamano wrote:
quoted
I haven't followed the codepath but what do the callers do to the string
returned from chop_str?  Don't they assume the string hasn't been decoded
(because the old implementation of chop_str did not do this to_utf8), and
emit the result directly to the output because it also assumes the
undecoded format is what the outside world wants?  In other words, don't
they now need to do different things because returned string has gone
through the to_utf8() processing already?
The to_utf8() (defined in gitweb.perl, not part of perl it self) is kind 
of sneaky, it checks if the string already is valid utf8. (guess it 
should be called ensure_utf8())
Perhaps it should...
chop_str needs to work on decoded string, otherwise character count goes 
all wrong. But maybe it is better to add the to_utf8() to the callsites?
Or do "binmode $fd, :utf8".

But yes, I guess converting to Perl internal form on input would be
good idea.  Gitweb currently does it partially...

-- 
Jakub Narebski
Poland
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help