Subject: Re: [PATCH v2] t/gitweb-lib: Don't pass constant to decode_utf8

From: Jakub Narebski <[email-masked]>
Date: Wed, 20 Oct 2010 21:05:58 +0200

On Wed, 20 Oct 2010, Brian Gernhardt wrote:

> Encode.pm started updating the string to decode in-place when a second
> argument is passed in version 2.40.  This causes 'decode_utf8("",
> Encode::FB_CROAK)' to die with a message like:

Very minor complaint: line break here makes it less readable.

Perhaps this?

  Encode.pm started updating the string to decode in-place when a second argument
  is passed in version 2.40.  This causes 'decode_utf8("", Encode::FB_CROAK)' to
  die with a message like:

> 
> Modification of a read-only value attempted at
> /Library/Perl/Updates/5.10.0/darwin-thread-multi-2level/Encode.pm line
> 216.

Very minor complaint: It might be better to not include path to installed
Encode.pm, which is different on different filesystems.

  Modification of a read-only value attempted at .../Encode.pm line
  216.

> 
> Work around this by passing an empty variable instead of a constant
> string.
> 
> Signed-off-by: Brian Gernhardt <[email-masked]>

Acked-by: Jakub Narebski <[email-masked]>

> ---
> 
>  Changes since v1:
>  - Use an explicitly empty variable instead of $_

...which was undefined, not empty, I think.

>  - Clearer commit message

It is very clear (though I don't remember previous one).

>  - CC people who worked on t/gitweb-lib.sh

Thanks a lot.

>  - based against maint

Was there any difference versus being based against 'master'?

> 
>  t/gitweb-lib.sh |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
> 
> diff --git a/t/gitweb-lib.sh b/t/gitweb-lib.sh
> index 81ef2a0..1b9523d 100644
> --- a/t/gitweb-lib.sh
> +++ b/t/gitweb-lib.sh
> @@ -80,7 +80,7 @@ if ! test_have_prereq PERL; then
>  	test_done
>  fi
>  
> -perl -MEncode -e 'decode_utf8("", Encode::FB_CROAK)' >/dev/null 2>&1 || {
> +perl -MEncode -e '$e="";decode_utf8($e, Encode::FB_CROAK)' >/dev/null 2>&1 || {
>      skip_all='skipping gitweb tests, perl version is too old'
>      test_done
>  }

Nicely done! Thanks!

-- 
Jakub Narebski
Poland