summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohan Herland <johan@herland.net>2014-11-12 01:40:15 +0100
committerJunio C Hamano <gitster@pobox.com>2014-11-12 11:00:22 -0800
commit8a4acd699536c518c9245714d6175aa39d13eb9d (patch)
tree55e1e9ccda6bd4a3116f8cc9e1cbf93c78a28812
parentd73a5b933db1e722faa54d6709e89e2450d7c1e3 (diff)
downloadgit-8a4acd699536c518c9245714d6175aa39d13eb9d.tar.gz
notes: empty notes should be shown by 'git log'
If the user has gone through the trouble of explicitly adding an empty note, then "git log" should not silently skip it (as if it didn't exist). Signed-off-by: Johan Herland <johan@herland.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--notes.c3
-rwxr-xr-xt/t3301-notes.sh12
2 files changed, 13 insertions, 2 deletions
diff --git a/notes.c b/notes.c
index 5fe691dbcd..62bc6e1818 100644
--- a/notes.c
+++ b/notes.c
@@ -1218,8 +1218,7 @@ static void format_note(struct notes_tree *t, const unsigned char *object_sha1,
if (!sha1)
return;
- if (!(msg = read_sha1_file(sha1, &type, &msglen)) || !msglen ||
- type != OBJ_BLOB) {
+ if (!(msg = read_sha1_file(sha1, &type, &msglen)) || type != OBJ_BLOB) {
free(msg);
return;
}
diff --git a/t/t3301-notes.sh b/t/t3301-notes.sh
index 70ec5c395f..416ed9e9dc 100755
--- a/t/t3301-notes.sh
+++ b/t/t3301-notes.sh
@@ -1274,4 +1274,16 @@ append -C "$empty_blob"
edit
EOF
+test_expect_success 'empty notes are displayed by git log' '
+ test_commit 17th &&
+ git log -1 >expect &&
+ cat >>expect <<\EOF &&
+
+Notes:
+EOF
+ git notes add -C "$empty_blob" --allow-empty &&
+ git log -1 >actual &&
+ test_cmp expect actual
+'
+
test_done