From: Ann T Ropea Date: Sun, 19 Nov 2017 18:41:10 GMT Subject: Re: [PATCH v3 2/5] diff: diff_aligned_abbrev: remove ellipsis after abbreviated SHA-1 value Message-ID: <20171119184113.16630-2-bedhanger@gmx.de> In-Reply-To: <20171119184113.16630-1-bedhanger@gmx.de> Neither Git nor the user are in need of this (visual) aid anymore, but we must offer a transition period. Also, fix a typo: "abbbreviated" ---> "abbreviated". Signed-off-by: Ann T Ropea --- v2: rename patch series & focus on removal of ellipses v3: env var instead of config option, use one-line comments where appropriate, preserve indent level diff.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/diff.c b/diff.c index 0763e89263ef..359c6fc85a27 100644 --- a/diff.c +++ b/diff.c @@ -4901,15 +4901,22 @@ const char *diff_aligned_abbrev(const struct object_id *oid, int len) { int abblen; const char *abbrev; + const char *env_printsha1ellipsis = getenv("PRINT_SHA1_ELLIPSIS"); + /* Do we want all 40 hex characters? */ if (len == GIT_SHA1_HEXSZ) return oid_to_hex(oid); + /* An abbreviated value is fine, possibly followed by an ellipsis. */ abbrev = diff_abbrev_oid(oid, len); + + if (!(env_printsha1ellipsis && !strcasecmp(env_printsha1ellipsis, "yes"))) + return abbrev; + abblen = strlen(abbrev); /* - * In well-behaved cases, where the abbbreviated result is the + * In well-behaved cases, where the abbreviated result is the * same as the requested length, append three dots after the * abbreviation (hence the whole logic is limited to the case * where abblen < 37); when the actual abbreviated result is a -- 2.13.6