Linus Torvalds <torvalds@xxxxxxxx> writes: > On Fri, 21 Apr 2006, Linus Torvalds wrote: >> >> This patch would have made things a lot more obvious. > > Actually, scratch that one, and use this one instead. Much better, and > actually allows Bob's crazy PAGER environment variable to work, rather > than just reporting an error about it. Agreed, this is much better than just punting. Sign-off? BTW: The extended extended SHA1 is a great addition. I do not usually have contrib/colordiff checked out (it is in "pu", not in "next"), but I can easily do: git tar-tree pu:contrib/colordiff colordiff | tar xf - Of course "git tar-tree pu | tar xf - contrib/colordiff" would work for this particular case, but that is besides the point. BTW: Allow me to try "git fmt-patch -1" ;-). -- >8 -- >From 34fd1c9ac5845d541e3196983df7f993e751b544 Thu Apr 7 15:13:13 2005 From: Linus Torvalds <torvalds@xxxxxxxx> Date: Fri Apr 21 12:25:13 2006 -0700 Subject: git-log produces no output When $PAGER is set to 'less -i', we used to fail because we assumed the $PAGER is a command and simply exec'ed it. Try exec first, and then run it through shell if it fails. This allows even funkier PAGERs like these ;-): PAGER='sed -e "s/^/`date`: /" | more' PAGER='contrib/colordiff.perl | less -RS' Signed-off-by: Linus Torvalds <torvalds@xxxxxxxx> Signed-off-by: Junio C Hamano <junkio@xxxxxxx> --- pager.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/pager.c b/pager.c index e5ba273..f7b8e78 100644 --- a/pager.c +++ b/pager.c @@ -8,6 +8,7 @@ #include "cache.h" static void run_pager(const char *pager) { execlp(pager, pager, NULL); + execl("/bin/sh", "sh", "-c", pager, NULL); } void setup_pager(void) @@ -47,5 +48,6 @@ void setup_pager(void) setenv("LESS", "-S", 0); run_pager(pager); + die("unable to execute pager '%s'", pager); exit(255); } -- 1.3.0.gd1e3 - : 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