Subject: Re: [PATCH] use || instead of | in logical expressions

From: Alexander Potashev <[email-masked]>
Date: Fri, 2 Jan 2009 02:07:46 +0300

On 01:39 Fri 02 Jan     , Alexander Potashev wrote:
> Bit OR ('|') is probably faster and it always works correctly (but '&'
> doesn't!), but it looks horrible here.

Sorry, I was wrong: '&' would work as well (for example in expression
'(a < 1) & (b == 5)') because logical operators can return only 0 or 1.

> 
> Signed-off-by: Alexander Potashev <[email-masked]>
> ---
>  builtin-apply.c |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
> 
> diff --git a/builtin-apply.c b/builtin-apply.c
> index 07244b0..c71afa1 100644
> --- a/builtin-apply.c
> +++ b/builtin-apply.c
> @@ -2487,7 +2487,7 @@ static int check_patch(struct patch *patch)
>  		ok_if_exists = 0;
>  
>  	if (new_name &&
> -	    ((0 < patch->is_new) | (0 < patch->is_rename) | patch->is_copy)) {
> +	    (0 < patch->is_new || 0 < patch->is_rename || patch->is_copy)) {
>  		if (check_index &&
>  		    cache_name_pos(new_name, strlen(new_name)) >= 0 &&
>  		    !ok_if_exists)
> -- 
> 1.6.0.6
>