Jeff King <peff@xxxxxxxx> writes: > I'll venture my opinion. We should do this: > > -- >8 -- > Subject: pager: turn on "cat" optimization for DEFAULT_PAGER > > If the user specifies a pager of "cat" (or the empty > string), whether it is in the environment or from config, we > automagically optimize it out to mean "no pager" and avoid > forking at all. We treat an empty pager variable similary. > > However, we did not apply this optimization when > DEFAULT_PAGER was set to "cat" (or the empty string). There > is no reason to treat DEFAULT_PAGER any differently. The > optimization should not be user-visible (unless the user has > a bizarre "cat" in their PATH). And even if it is, we are > better off behaving consistently between the compile-time > default and the environment and config settings. > > The stray "else" we are removing from this code was > introduced by 402461a (pager: do not fork a pager if PAGER > is set to empty., 2006-04-16). At that time, the line > directly above used: > > if (!pager) > pager = "less"; > > as a fallback, meaning that it could not possibly trigger > the optimization. Later, a3d023d (Provide a build time > default-pager setting, 2009-10-30) turned that constant into > a build-time setting which could be anything, but didn't > loosen the "else" to let DEFAULT_PAGER use the optimization. > > Noticed-by: Dale R. Worley <worley@xxxxxxxxxxxx> > Suggested-by: Matthieu Moy <Matthieu.Moy@xxxxxxxxxxxxxxx> > Signed-off-by: Jeff King <peff@xxxxxxxx> > --- Makes sense. Thanks. > pager.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/pager.c b/pager.c > index c1ecf65..fa19765 100644 > --- a/pager.c > +++ b/pager.c > @@ -54,7 +54,7 @@ const char *git_pager(int stdout_is_tty) > pager = getenv("PAGER"); > if (!pager) > pager = DEFAULT_PAGER; > - else if (!*pager || !strcmp(pager, "cat")) > + if (!*pager || !strcmp(pager, "cat")) > pager = NULL; > > return pager; -- 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