diff options
author | Felipe Contreras <felipe.contreras@gmail.com> | 2013-04-30 20:09:54 -0500 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2013-04-30 22:06:46 -0700 |
commit | 181662080098e77a0fd814ffe84be605a058b5d1 (patch) | |
tree | 165635a08a435a4d9b9a90b6eec912883150f25a | |
parent | remote-bzr: cleanup CustomTree (diff) | |
download | tgif-181662080098e77a0fd814ffe84be605a058b5d1.tar.xz |
remote-bzr: delay blob fetching until the very end
Might be more efficient, but the real reason to use the marks will be
revealed in upcoming patches.
Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rwxr-xr-x | contrib/remote-helpers/git-remote-bzr | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/contrib/remote-helpers/git-remote-bzr b/contrib/remote-helpers/git-remote-bzr index 7452a572c1..91b5cda767 100755 --- a/contrib/remote-helpers/git-remote-bzr +++ b/contrib/remote-helpers/git-remote-bzr @@ -506,10 +506,12 @@ class CustomTree(): return changes def get_file_with_stat(self, file_id, path=None): - return (StringIO.StringIO(self.updates[file_id]['data']), None) + mark = self.updates[file_id]['mark'] + return (StringIO.StringIO(blob_marks[mark]), None) def get_symlink_target(self, file_id): - return self.updates[file_id]['data'] + mark = self.updates[file_id]['mark'] + return blob_marks[mark] def c_style_unescape(string): if string[0] == string[-1] == '"': @@ -553,7 +555,7 @@ def parse_commit(parser): if parser.check('M'): t, m, mark_ref, path = line.split(' ', 3) mark = int(mark_ref[1:]) - f = { 'mode' : m, 'data' : blob_marks[mark] } + f = { 'mode' : m, 'mark' : mark } elif parser.check('D'): t, path = line.split(' ') f = { 'deleted' : True } |