diff options
author | Russell Belfer <rb@github.com> | 2012-11-13 14:02:59 -0800 |
---|---|---|
committer | Russell Belfer <rb@github.com> | 2012-11-14 22:55:40 -0800 |
commit | bad68c0a998116685ad75cab84210004dd2c5be1 (patch) | |
tree | d8b6db9be06ea1fcc150b5a7d2ba4cd635a174aa /src/diff.c | |
parent | 5735bf5e6ab4da347b601d4b85c09c5c701dc002 (diff) | |
download | libgit2-bad68c0a998116685ad75cab84210004dd2c5be1.tar.gz |
Add iterator for git_index object
The index iterator could previously only be created from a repo
object, but this allows creating an iterator from a `git_index`
object instead (while keeping, though renaming, the old function).
Diffstat (limited to 'src/diff.c')
-rw-r--r-- | src/diff.c | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/src/diff.c b/src/diff.c index b75ada1e0..e6634e6d2 100644 --- a/src/diff.c +++ b/src/diff.c @@ -777,6 +777,19 @@ int git_diff_tree_to_tree( ); } +int git_diff__tree_to_index( + git_diff_list **diff, + git_tree *tree, + git_index *index, + const git_diff_options *opts) +{ + DIFF_FROM_ITERATORS( + git_repository *repo = git_index_owner(index), + git_iterator_for_index_range(&a, index, pfx, pfx), + git_iterator_for_tree_range(&b, repo, tree, pfx, pfx) + ); +} + int git_diff_index_to_tree( git_diff_list **diff, git_repository *repo, @@ -786,7 +799,7 @@ int git_diff_index_to_tree( DIFF_FROM_ITERATORS( assert(repo && diff), git_iterator_for_tree_range(&a, repo, old_tree, pfx, pfx), - git_iterator_for_index_range(&b, repo, pfx, pfx) + git_iterator_for_repo_index_range(&b, repo, pfx, pfx) ); } @@ -797,7 +810,7 @@ int git_diff_workdir_to_index( { DIFF_FROM_ITERATORS( assert(repo && diff), - git_iterator_for_index_range(&a, repo, pfx, pfx), + git_iterator_for_repo_index_range(&a, repo, pfx, pfx), git_iterator_for_workdir_range(&b, repo, pfx, pfx) ); } |