Re: Fix UTF Encoding issue

[email protected] (Benjamin Close) Tue, 4 Dec 2007 09:34:34 +1030
Newsgroups perl.unicode
Message-ID <[email protected]>
On Tue, Dec 04, 2007 at 12:20:26AM +0200, Ismail D??nmez wrote:
> Monday 03 December 2007 Tarihinde 23:46:24 yazm????t??:
> > Jakub Narebski wrote:
> > > On Mon, 3 Dec 2007, Martin Koegler wrote:
> > >> On Mon, Dec 03, 2007 at 04:06:48AM -0800, Jakub Narebski wrote:
> > >>> Ismail D??nmez <[email protected]> writes:
> > >>>> Monday 03 December 2007 Tarihinde 12:14:43 yazm??t?:
> > >>>>> Benjamin Close <[email protected]> writes:
> > >>>>>> -	eval { $res = decode_utf8($str, Encode::FB_CROAK); };
> > >>>>>> -	if (defined $res) {
> > >>>>>> -		return $res;
> > >>>>>> -	} else {
> > >>>>>> -		return decode($fallback_encoding, $str, Encode::FB_DEFAULT);
> > >>>>>> -	}
> > >>>>>> +	eval { return ($res = decode_utf8($str, Encode::FB_CROAK)); };
> > >>>>>> +	return decode($fallback_encoding, $str, Encode::FB_DEFAULT);
> > >>>>>>  }
> > >>
> > >> This version is broken on Debian sarge and etch. Feeding a UTF-8 and a
> > >> latin1 encoding of the same character sequence yields to different
> > >> results.
> >
> > For the record, this was on a debian sid machine.
> >
> > #perl --version
> > This is perl, v5.8.8 built for x86_64-linux-gnu-thread-multi
> >
> > and the result of not using the original patch was:
> >
> > <h1>Software error:</h1>
> > <pre>Cannot decode string with wide characters at
> > /usr/lib/perl/5.8/Encode.pm line 166. </pre>
> 
> Can you try the attached patch?

I confirm that the patch corrects the problem.

Without it I get the Cannot decode string error. With it gitweb displays
correctly.

Cheers,
	Benjamin