# HG changeset patch # User Matt Mackall # Date 1167444271 21600 # Node ID 656e06eebda7378d316966e7aa6f33ad1e5ce062 # Parent c83c35f2f4e27c84fb5752e55b060f516a96d67b replace filehandle version of wwrite with wwritedata diff -r c83c35f2f4e2 -r 656e06eebda7 hgext/extdiff.py --- a/hgext/extdiff.py Fri Dec 29 20:04:31 2006 -0600 +++ b/hgext/extdiff.py Fri Dec 29 20:04:31 2006 -0600 @@ -73,7 +73,8 @@ destdir = os.path.dirname(dest) if not os.path.isdir(destdir): os.makedirs(destdir) - repo.wwrite(wfn, repo.file(fn).read(mf[fn]), open(dest, 'w')) + data = repo.wwritedata(wfn, repo.file(wfn).read(mf[wfn])) + open(dest, 'w').write(data) return dirname def snapshot_wdir(files): diff -r c83c35f2f4e2 -r 656e06eebda7 mercurial/archival.py --- a/mercurial/archival.py Fri Dec 29 20:04:31 2006 -0600 +++ b/mercurial/archival.py Fri Dec 29 20:04:31 2006 -0600 @@ -154,9 +154,7 @@ def write(name, mode, data): if matchfn and not matchfn(name): return if decode: - fp = cStringIO.StringIO() - repo.wwrite(name, data, fp) - data = fp.getvalue() + data = repo.wwritedata(name, data) archiver.addfile(name, mode, data) ctx = repo.changectx(node) diff -r c83c35f2f4e2 -r 656e06eebda7 mercurial/localrepo.py --- a/mercurial/localrepo.py Fri Dec 29 20:04:31 2006 -0600 +++ b/mercurial/localrepo.py Fri Dec 29 20:04:31 2006 -0600 @@ -505,12 +505,13 @@ data = self.wopener(filename, 'r').read() return self._filter("encode", filename, data) - def wwrite(self, filename, data, fd=None): + def wwrite(self, filename, data): data = self._filter("decode", filename, data) - if fd: - return fd.write(data) return self.wopener(filename, 'w').write(data) + def wwritedata(self, filename, data): + return self._filter("decode", filename, data) + def transaction(self): tr = self.transhandle if tr != None and tr.running(): diff -r c83c35f2f4e2 -r 656e06eebda7 mercurial/merge.py --- a/mercurial/merge.py Fri Dec 29 20:04:31 2006 -0600 +++ b/mercurial/merge.py Fri Dec 29 20:04:31 2006 -0600 @@ -20,8 +20,9 @@ def temp(prefix, ctx): pre = "%s~%s." % (os.path.basename(ctx.path()), prefix) (fd, name) = tempfile.mkstemp(prefix=pre) + data = repo.wwritedata(ctx.path(), ctx.data()) f = os.fdopen(fd, "wb") - repo.wwrite(ctx.path(), ctx.data(), f) + f.write(data) f.close() return name