diff options
author | Vicent Marti <tanoku@gmail.com> | 2010-09-21 17:17:10 +0300 |
---|---|---|
committer | Vicent Marti <tanoku@gmail.com> | 2010-09-21 17:17:10 +0300 |
commit | 2a884588b405c4dee78494119a123fb1878f3490 (patch) | |
tree | 04be673b6bd0ea4dd6ac00d8ccf8101e1a9baaec /src/tree.h | |
parent | d45b4a9a1bcbb157a4f02cf5ed23fde5222db9c8 (diff) | |
download | libgit2-2a884588b405c4dee78494119a123fb1878f3490.tar.gz |
Add write-back support for git_tree
All the setter methods for git_tree have been added, including the
setters for attributes on each git_tree_entry and methods to add/remove
entries of the tree.
Modified trees and trees created in-memory from scratch can be written
back to the repository using git_object_write().
Signed-off-by: Vicent Marti <tanoku@gmail.com>
Diffstat (limited to 'src/tree.h')
-rw-r--r-- | src/tree.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/tree.h b/src/tree.h index dd15b9b9b..118d2c3d6 100644 --- a/src/tree.h +++ b/src/tree.h @@ -4,9 +4,11 @@ #include <git/tree.h> #include "repository.h" +#define GIT_TREE_MAX_FILENAME 255 + struct git_tree_entry { unsigned int attr; - char *filename; + char filename[GIT_TREE_MAX_FILENAME]; git_oid oid; git_tree *owner; @@ -15,11 +17,13 @@ struct git_tree_entry { struct git_tree { git_object object; - git_tree_entry *entries; + git_tree_entry **entries; size_t entry_count; + size_t array_size; }; void git_tree__free(git_tree *tree); int git_tree__parse(git_tree *tree); +int git_tree__writeback(git_tree *tree, git_odb_source *src); #endif |