threads / patch / 14646

patch[PATCH]

Subject: [PATCH]

## tl;dr

2 messages between Jul 24, 2008 and Jul 24, 2008. Diffs are folded; open one to read it.

replies: 1people: 1as markdown or json

Junio C Hamano· Jul 24, 2008, 00:22 UTC · lore

f2eba66 (Enable HEAD@{...} and make it independent from the current branch, 2007-02-03) introduced dwim_log() to handle <refname>@{...} syntax, and as part of its processing, it checks if the ref exists by calling refsolve_ref(). It should call it as a reader to make sure the call returns NULL for a nonexistent ref (not as a potential writer in which case it does not return NULL).

Signed-off-by: Junio C Hamano <gitster@pobox.com>
---
 * I found this purely by accident.  "echo >.git/logs/refs/heads/HEAD"
   would make your "git rev-parse HEAD@{1}" complain about a refname
   'HEAD' being ambiguous without this patch.
 sha1_name.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
Show changes to sha1_name.c +1 −1
diff --git a/sha1_name.c b/sha1_name.c
index b0b2167..4fb77f8 100644
--- a/sha1_name.c
+++ b/sha1_name.c
@@ -273,7 +273,7 @@ int dwim_log(const char *str, int len, unsigned char *sha1, char **log)
 		const char *ref, *it;
 
 		strcpy(path, mkpath(*p, len, str));
-		ref = resolve_ref(path, hash, 0, NULL);
+		ref = resolve_ref(path, hash, 1, NULL);
 		if (!ref)
 			continue;
 		if (!stat(git_path("logs/%s", path), &st) &&

← back to recent threads