From 3dbee456564a9baf24631bfe219f81434d8fdfa6 Mon Sep 17 00:00:00 2001 From: Russell Belfer Date: Fri, 7 Feb 2014 14:10:35 -0800 Subject: Some index internals refactoring Again, laying groundwork for some index iterator changes, this contains a bunch of code refactorings for index internals that should make it easier down the line to add locking around index modifications. Also this removes the redundant prefix_position function and fixes some potential memory leaks. --- src/iterator.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'src/iterator.c') diff --git a/src/iterator.c b/src/iterator.c index a7a44914c..45655254c 100644 --- a/src/iterator.c +++ b/src/iterator.c @@ -815,8 +815,10 @@ static int index_iterator__reset( if (iterator__reset_range(self, start, end) < 0) return -1; - ii->current = ii->base.start ? - git_index__prefix_position(ii->index, ii->base.start) : 0; + ii->current = 0; + + if (ii->base.start) + git_index__find(&ii->current, ii->index, ii->base.start, 0, 0); if ((ie = index_iterator__skip_conflicts(ii)) == NULL) return 0; -- cgit v1.2.3