Subject: Re: [PATCH v2 2/5] update_unicode.sh: set UNICODE_DIR only once

From: Beat Bolli <[email-masked]>
Date: Tue, 23 Dec 2014 01:32:43 +0100

On 22.12.14 19:02, Junio C Hamano wrote:
> [email-masked] writes:
> 
>> From: Beat Bolli <[email-masked]>
>>
>> The value is the same on both uniset invocations, so "Don't Repeat
>> Yourself" applies.
>>
>> Since we're in a subshell already, there's no need to unset UNICODE_DIR
>> at the end.
> 
> Strictly speaking, you are not introducing your own subshell to
> prevent the environment from leaking (i.e. you used "{...}" not
> "(...)" in the previous step).  The reason you can do this is
> because the generation of UNICODEWIDTH_H file is the last thing in
> the subshell.

I don't introduce a new one, but we're still in the outer subshell that
starts on line 12 "( cd unicode &&".

> 
> I'll reword it to "Since this is done as the last command, ..."
> 
> Thanks.
> 
>>
>> Signed-off-by: Beat Bolli <[email-masked]>
>> ---
>>  update_unicode.sh | 5 +++--
>>  1 file changed, 3 insertions(+), 2 deletions(-)
>>
>> diff --git a/update_unicode.sh b/update_unicode.sh
>> index c1c876c..bed8916 100755
>> --- a/update_unicode.sh
>> +++ b/update_unicode.sh
>> @@ -27,12 +27,13 @@ fi &&
>>  		fi &&
>>  		make
>>  	) && {
>> +		UNICODE_DIR=. && export UNICODE_DIR &&
>>  		echo "static const struct interval zero_width[] = {" &&
>> -		UNICODE_DIR=. ./uniset/uniset --32 cat:Me,Mn,Cf + U+1160..U+11FF - U+00AD |
>> +		./uniset/uniset --32 cat:Me,Mn,Cf + U+1160..U+11FF - U+00AD |
>>  		grep -v plane &&
>>  		echo "};" &&
>>  		echo "static const struct interval double_width[] = {" &&
>> -		UNICODE_DIR=. ./uniset/uniset --32 eaw:F,W &&
>> +		./uniset/uniset --32 eaw:F,W &&
>>  		echo "};"
>>  	} >$UNICODEWIDTH_H
>>  )