From: Johan Herland Date: Fri, 09 Oct 2009 10:22:13 GMT Subject: [RFC/PATCHv7 17/22] Notes API: add_note(): Add note objects to the internal notes tree structure Message-ID: <1255083738-23263-19-git-send-email-johan@herland.net> In-Reply-To: <1255083738-23263-1-git-send-email-johan@herland.net> Signed-off-by: Johan Herland --- notes.c | 11 +++++++++++ notes.h | 4 ++++ 2 files changed, 15 insertions(+), 0 deletions(-) diff --git a/notes.c b/notes.c index f2bacbb..49a3e86 100644 --- a/notes.c +++ b/notes.c @@ -366,6 +366,17 @@ void init_notes(const char *notes_ref, int flags) load_subtree(&root_tree, &root_node, 0); } +void add_note(const unsigned char *object_sha1, const unsigned char *note_sha1) +{ + struct leaf_node *l; + + assert(initialized); + l = (struct leaf_node *) xmalloc(sizeof(struct leaf_node)); + hashcpy(l->key_sha1, object_sha1); + hashcpy(l->val_sha1, note_sha1); + note_tree_insert(&root_node, 0, l, PTR_TYPE_NOTE); +} + static unsigned char *lookup_notes(const unsigned char *object_sha1) { struct leaf_node *found = note_tree_find(&root_node, 0, object_sha1); diff --git a/notes.h b/notes.h index 6b52799..5f22852 100644 --- a/notes.h +++ b/notes.h @@ -21,6 +21,10 @@ */ void init_notes(const char *notes_ref, int flags); +/* Add the given note object to the internal notes tree structure */ +void add_note(const unsigned char *object_sha1, + const unsigned char *note_sha1); + /* Free (and de-initialize) the internal notes tree structure */ void free_notes(void); -- 1.6.4.304.g1365c.dirty