summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFelipe Contreras <felipe.contreras@gmail.com>2013-04-30 20:09:54 -0500
committerJunio C Hamano <gitster@pobox.com>2013-04-30 22:06:46 -0700
commit181662080098e77a0fd814ffe84be605a058b5d1 (patch)
tree165635a08a435a4d9b9a90b6eec912883150f25a
parentc80f4c77633df44c5c8418056d2266f35978d172 (diff)
downloadgit-181662080098e77a0fd814ffe84be605a058b5d1.tar.gz
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-xcontrib/remote-helpers/git-remote-bzr8
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 }