• Linus Torvalds's avatar
    Fix 'git log' early pager startup error case · 1fda91b5
    Linus Torvalds authored
    We start the pager too early for several git commands, which results in
    the errors sometimes going to the pager rather than show up as errors.
    
    This is often hidden by the fact that we pass in '-X' to less by default,
    which causes 'less' to exit for small output, but if you do
    
      export LESS=-S
    
    you can then clearly see the problem by doing
    
      git log --prretty
    
    which shows the error message ("fatal: unrecognized argument: --prretty")
    being sent to the pager.
    
    This happens for pretty much all git commands that use USE_PAGER, and then
    check arguments separately. But "git diff" does it too early too (even
    though it does an explicit setup_pager() call)
    
    This only fixes it for the trivial "git log" family case.
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
    1fda91b5
log.c 37.9 KB