--- a/mercurial/transaction.py Wed Nov 05 01:52:46 2014 +0000
+++ b/mercurial/transaction.py Fri Oct 17 20:49:39 2014 -0700
@@ -70,8 +70,8 @@
opener.unlink(f)
class transaction(object):
- def __init__(self, report, opener, journal, after=None, createmode=None,
- onclose=None, onabort=None):
+ def __init__(self, report, opener, vfsmap, journal, after=None,
+ createmode=None, onclose=None, onabort=None):
"""Begin a new transaction
Begins a new transaction that allows rolling back writes in the event of
@@ -87,7 +87,12 @@
self.count = 1
self.usages = 1
self.report = report
+ # a vfs to the store content
self.opener = opener
+ # a map to access file in various {location -> vfs}
+ vfsmap = vfsmap.copy()
+ vfsmap[''] = opener # set default value
+ self._vfsmap = vfsmap
self.after = after
self.onclose = onclose
self.onabort = onabort