summaryrefslogtreecommitdiff
path: root/builtin/blame.c
diff options
context:
space:
mode:
authorLibravatar Jeff King <peff@peff.net>2016-09-26 07:59:15 -0400
committerLibravatar Junio C Hamano <gitster@pobox.com>2016-09-26 11:46:30 -0700
commit7243ffdd78d56738e568abb544eba00e8079f329 (patch)
treeef971ab138686a1dd32ecef9c5a5960a2a543072 /builtin/blame.c
parentget_sha1: detect buggy calls with multiple disambiguators (diff)
downloadtgif-7243ffdd78d56738e568abb544eba00e8079f329.tar.xz
get_sha1: avoid repeating ourselves via ONLY_TO_DIE
When the revision code cannot parse an argument like "HEAD:foo", it will call maybe_die_on_misspelt_object_name(), which re-runs get_sha1() with an extra ONLY_TO_DIE flag. We then spend more effort to generate a better error message. Unfortunately, a side effect is that our second call may repeat the same error messages from the original get_sha1() call. You can see this with: $ git show 0017 error: short SHA1 0017 is ambiguous. error: short SHA1 0017 is ambiguous. fatal: ambiguous argument '0017': unknown revision or path not in the working tree. Use '--' to separate paths from revisions, like this: 'git <command> [<revision>...] -- [<file>...]' where the second "error:" line comes from the ONLY_TO_DIE call. To fix this, we can make ONLY_TO_DIE imply QUIETLY. This is a little odd, because the whole point of ONLY_TO_DIE is to output error messages. But what we want to do is tell the rest of the get_sha1() code (particularly get_sha1_1()) that the _regular_ messages should be quiet, but the only-to-die ones should not. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin/blame.c')
0 files changed, 0 insertions, 0 deletions