All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Martin Ågren" <martin.agren@gmail.com>
To: git@vger.kernel.org
Cc: Eric Sunshine <sunshine@sunshineco.com>, Jeff King <peff@peff.net>
Subject: [PATCH] doc-diff: don't `cd_to_toplevel` before calling `usage`
Date: Sun,  3 Feb 2019 09:35:45 +0100	[thread overview]
Message-ID: <20190203083545.5877-1-martin.agren@gmail.com> (raw)

`usage` tries to call $0, which might very well be "./doc-diff", so if
we `cd_to_toplevel` before calling `usage`, we'll end with an error to
the effect of "./doc-diff: not found" rather than a friendly `doc-diff
-h` output. Granted, all of these `usage` calls are in error paths, so
we're about to exit anyway, but the user experience of something like
`(cd Documentation && ./doc-diff)` could be a bit better than
"./doc-diff: not found".

This regressed in ad51743007 ("doc-diff: add --clean mode to remove
temporary working gunk", 2018-08-31) where we moved the call to
`cd_to_toplevel` to much earlier. Move it back to where it was, and
teach the "--clean" code to cd on its own. This way, we only cd once
we've verified the arguments.

Signed-off-by: Martin Ågren <martin.agren@gmail.com>
---
 Documentation/doc-diff | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/Documentation/doc-diff b/Documentation/doc-diff
index dfd9418778..f820febf8f 100755
--- a/Documentation/doc-diff
+++ b/Documentation/doc-diff
@@ -39,12 +39,11 @@ do
 	shift
 done
 
-cd_to_toplevel
-tmp=Documentation/tmp-doc-diff
-
 if test -n "$clean"
 then
 	test $# -eq 0 || usage
+	cd_to_toplevel
+	tmp=Documentation/tmp-doc-diff
 	git worktree remove --force "$tmp/worktree" 2>/dev/null
 	rm -rf "$tmp"
 	exit 0
@@ -66,6 +65,9 @@ to=$1; shift
 from_oid=$(git rev-parse --verify "$from") || exit 1
 to_oid=$(git rev-parse --verify "$to") || exit 1
 
+cd_to_toplevel
+tmp=Documentation/tmp-doc-diff
+
 if test -n "$force"
 then
 	rm -rf "$tmp"
-- 
2.20.1.309.g16a465bc01


             reply	other threads:[~2019-02-03  8:37 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-02-03  8:35 Martin Ågren [this message]
2019-02-03  9:08 ` [PATCH] doc-diff: don't `cd_to_toplevel` before calling `usage` Eric Sunshine
2019-02-03  9:11   ` Eric Sunshine
2019-02-03 10:35     ` Martin Ågren
2019-02-03 11:01       ` Eric Sunshine
2019-02-03 11:08         ` [PATCH v2] " Martin Ågren
2019-02-03 23:01           ` Jeff King
2019-02-04 20:50             ` [PATCH v3] doc-diff: don't `cd_to_toplevel` Martin Ågren
2019-02-04 23:34               ` Jeff King
2019-02-05 10:34                 ` Johannes Schindelin
2019-02-05 18:45                   ` Junio C Hamano
2019-02-06 12:20                     ` Johannes Schindelin
2019-02-06 17:24                       ` Junio C Hamano
2019-02-06 18:55                     ` Jeff King
2019-02-07 15:41                       ` Johannes Schindelin
2019-02-07 17:37                         ` Junio C Hamano
2019-02-07 21:34                           ` Johannes Schindelin
2019-02-07 20:49                         ` Jeff King
2019-02-07 21:42                           ` Johannes Schindelin
2019-02-06 18:49                   ` Jeff King
2019-02-07 14:26                     ` Johannes Schindelin
2019-02-07 20:45                       ` Jeff King
2019-02-07 21:57                         ` Johannes Schindelin
2019-02-08  2:53                           ` Jeff King
2019-02-08  4:34                             ` Jeff King
2019-02-08  0:58                         ` SZEDER Gábor
2019-02-08  2:51                           ` Jeff King

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190203083545.5877-1-martin.agren@gmail.com \
    --to=martin.agren@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=peff@peff.net \
    --cc=sunshine@sunshineco.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.