summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--notes.c7
-rw-r--r--notes.h3
2 files changed, 10 insertions, 0 deletions
diff --git a/notes.c b/notes.c
index b7d79e1900..a5d888d772 100644
--- a/notes.c
+++ b/notes.c
@@ -105,6 +105,13 @@ static unsigned char *lookup_notes(const unsigned char *commit_sha1)
return hash_map.entries[index].notes_sha1;
}
+void free_notes(void)
+{
+ free(hash_map.entries);
+ memset(&hash_map, 0, sizeof(struct hash_map));
+ initialized = 0;
+}
+
void get_commit_notes(const struct commit *commit, struct strbuf *sb,
const char *output_encoding, int flags)
{
diff --git a/notes.h b/notes.h
index 7f3eed4384..a1421e351a 100644
--- a/notes.h
+++ b/notes.h
@@ -1,6 +1,9 @@
#ifndef NOTES_H
#define NOTES_H
+/* Free (and de-initialize) the internal notes tree structure */
+void free_notes(void);
+
#define NOTES_SHOW_HEADER 1
#define NOTES_INDENT 2