Linus Torvalds [off-list ref] writes:
quoted
- if (!cached) {
+ if (!cached &&
+ (!NO_H_OPTION_IN_GREP ||
+ (!opt->count && !opt->unmatch_name_only))) {
hit = external_grep(opt, paths, cached);
if (hit >= 0)
return hit;
That's the ugliest test ever, and at all the wrong levels.
Just make "external_grep()" test for the cases that it cannot handle, and
return -1. That's how it's designed to work.
Ah.... *BLUSH* I was not thinking when I saw that "if (hit >= 0)"
stuff. Yes, you made it to fall back.