Show More
@@ -73,7 +73,8 b' def dodiff(ui, repo, diffcmd, diffopts, ' | |||||
73 | destdir = os.path.dirname(dest) |
|
73 | destdir = os.path.dirname(dest) | |
74 | if not os.path.isdir(destdir): |
|
74 | if not os.path.isdir(destdir): | |
75 | os.makedirs(destdir) |
|
75 | os.makedirs(destdir) | |
76 |
repo.wwrite(wfn, repo.file(fn).read(mf[fn] |
|
76 | data = repo.wwritedata(wfn, repo.file(wfn).read(mf[wfn])) | |
|
77 | open(dest, 'w').write(data) | |||
77 | return dirname |
|
78 | return dirname | |
78 |
|
79 | |||
79 | def snapshot_wdir(files): |
|
80 | def snapshot_wdir(files): |
@@ -154,9 +154,7 b' def archive(repo, dest, node, kind, deco' | |||||
154 | def write(name, mode, data): |
|
154 | def write(name, mode, data): | |
155 | if matchfn and not matchfn(name): return |
|
155 | if matchfn and not matchfn(name): return | |
156 | if decode: |
|
156 | if decode: | |
157 | fp = cStringIO.StringIO() |
|
157 | data = repo.wwritedata(name, data) | |
158 | repo.wwrite(name, data, fp) |
|
|||
159 | data = fp.getvalue() |
|
|||
160 | archiver.addfile(name, mode, data) |
|
158 | archiver.addfile(name, mode, data) | |
161 |
|
159 | |||
162 | ctx = repo.changectx(node) |
|
160 | ctx = repo.changectx(node) |
@@ -505,12 +505,13 b' class localrepository(repo.repository):' | |||||
505 | data = self.wopener(filename, 'r').read() |
|
505 | data = self.wopener(filename, 'r').read() | |
506 | return self._filter("encode", filename, data) |
|
506 | return self._filter("encode", filename, data) | |
507 |
|
507 | |||
508 |
def wwrite(self, filename, data |
|
508 | def wwrite(self, filename, data): | |
509 | data = self._filter("decode", filename, data) |
|
509 | data = self._filter("decode", filename, data) | |
510 | if fd: |
|
|||
511 | return fd.write(data) |
|
|||
512 | return self.wopener(filename, 'w').write(data) |
|
510 | return self.wopener(filename, 'w').write(data) | |
513 |
|
511 | |||
|
512 | def wwritedata(self, filename, data): | |||
|
513 | return self._filter("decode", filename, data) | |||
|
514 | ||||
514 | def transaction(self): |
|
515 | def transaction(self): | |
515 | tr = self.transhandle |
|
516 | tr = self.transhandle | |
516 | if tr != None and tr.running(): |
|
517 | if tr != None and tr.running(): |
@@ -20,8 +20,9 b' def filemerge(repo, fw, fo, wctx, mctx):' | |||||
20 | def temp(prefix, ctx): |
|
20 | def temp(prefix, ctx): | |
21 | pre = "%s~%s." % (os.path.basename(ctx.path()), prefix) |
|
21 | pre = "%s~%s." % (os.path.basename(ctx.path()), prefix) | |
22 | (fd, name) = tempfile.mkstemp(prefix=pre) |
|
22 | (fd, name) = tempfile.mkstemp(prefix=pre) | |
|
23 | data = repo.wwritedata(ctx.path(), ctx.data()) | |||
23 | f = os.fdopen(fd, "wb") |
|
24 | f = os.fdopen(fd, "wb") | |
24 | repo.wwrite(ctx.path(), ctx.data(), f) |
|
25 | f.write(data) | |
25 | f.close() |
|
26 | f.close() | |
26 | return name |
|
27 | return name | |
27 |
|
28 |
General Comments 0
You need to be logged in to leave comments.
Login now