From 404321879585b392118c9f4c3c4c9e4ccd6ba09f Mon Sep 17 00:00:00 2001 From: Michael Haggerty Date: Sat, 26 Aug 2017 10:28:07 +0200 Subject: load_subtree(): only consider blobs to be potential notes The old code converted any entry whose path constituted a full SHA-1 as a leaf node, without regard for the type of the entry. But only blobs can be notes. So treat entries whose paths *look like* notes paths but that are not blobs as non-notes. Signed-off-by: Michael Haggerty Signed-off-by: Junio C Hamano --- notes.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/notes.c b/notes.c index 61a5001fc0..8bca18edbb 100644 --- a/notes.c +++ b/notes.c @@ -437,6 +437,11 @@ static void load_subtree(struct notes_tree *t, struct leaf_node *subtree, if (path_len == 2 * (GIT_SHA1_RAWSZ - prefix_len)) { /* This is potentially the remainder of the SHA-1 */ + + if (!S_ISREG(entry.mode)) + /* notes must be blobs */ + goto handle_non_note; + if (get_oid_hex_segment(entry.path, path_len, object_oid.hash + prefix_len, GIT_SHA1_RAWSZ - prefix_len) < 0) -- cgit v1.2.3