Re: [PATCH 10/16] add NO_EXTERNAL_GREP build option

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Jeff King schrieb:
> Junio's fixups should restore the automagic behavior, so you shouldn't
> see any problems now, I think. But the run_command cleanup is sensible.

Thanks. But it turns out that things are not /that/ trivial. We better
live with Junio's fixup.

> -	while (waitpid(pid, &status, 0) < 0) {
> -		if (errno == EINTR)
> -			continue;
> -		return -1;
> -	}
> -	if (WIFEXITED(status)) {
> -		if (!WEXITSTATUS(status))
> -			return 1;
> -		return 0;
> -	}
> -	return -1;
> -}
> -
...
> +	status = run_command_v_opt(argv, 0);
...
> +	return status == 0 ? 1 : -1;

grep can return 0 (success, something found), 1 (nothing found), and other
values for "real" failures like usage errors or crashes. This conditional
throws the latter two into the same pot, which makes git-grep unable to
distinguish "nothing found" from failure; cf. the call sites of
flush_grep(), where want to set the flag 'hit'.

-- Hannes

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux