log --format: teach %C(auto,black) to respect color config
[gitweb.git] / notes.c
diff --git a/notes.c b/notes.c
index f6ce8489d31e48d30dfbc6aef4edf6dbb8314234..ee8f01f1d5c1dcb39c40eee443eddaedde380d20 100644 (file)
--- a/notes.c
+++ b/notes.c
@@ -1105,7 +1105,7 @@ int remove_note(struct notes_tree *t, const unsigned char *object_sha1)
        hashcpy(l.key_sha1, object_sha1);
        hashclr(l.val_sha1);
        note_tree_remove(t, t->root, 0, &l);
-       if (is_null_sha1(l.val_sha1)) // no note was removed
+       if (is_null_sha1(l.val_sha1)) /* no note was removed */
                return 1;
        t->dirty = 1;
        return 0;
@@ -1196,8 +1196,18 @@ void free_notes(struct notes_tree *t)
        memset(t, 0, sizeof(struct notes_tree));
 }
 
-void format_note(struct notes_tree *t, const unsigned char *object_sha1,
-               struct strbuf *sb, const char *output_encoding, int flags)
+/*
+ * Fill the given strbuf with the notes associated with the given object.
+ *
+ * If the given notes_tree structure is not initialized, it will be auto-
+ * initialized to the default value (see documentation for init_notes() above).
+ * If the given notes_tree is NULL, the internal/default notes_tree will be
+ * used instead.
+ *
+ * 'flags' is a bitwise combination of the flags for format_display_notes.
+ */
+static void format_note(struct notes_tree *t, const unsigned char *object_sha1,
+                       struct strbuf *sb, const char *output_encoding, int flags)
 {
        static const char utf8[] = "utf-8";
        const unsigned char *sha1;
@@ -1221,7 +1231,7 @@ void format_note(struct notes_tree *t, const unsigned char *object_sha1,
        }
 
        if (output_encoding && *output_encoding &&
-                       strcmp(utf8, output_encoding)) {
+           !is_encoding_utf8(output_encoding)) {
                char *reencoded = reencode_string(msg, output_encoding, utf8);
                if (reencoded) {
                        free(msg);