1 | diff -rN -u old-1.9.2/src/allmydata/immutable/filenode.py new-1.9.2/src/allmydata/immutable/filenode.py |
---|
2 | --- old-1.9.2/src/allmydata/immutable/filenode.py 2012-10-27 21:48:02.750754675 -0600 |
---|
3 | +++ new-1.9.2/src/allmydata/immutable/filenode.py 2012-10-27 21:48:02.944087254 -0600 |
---|
4 | @@ -22,6 +22,7 @@ |
---|
5 | from allmydata.immutable.downloader.status import DownloadStatus |
---|
6 | |
---|
7 | class CiphertextFileNode: |
---|
8 | + # XXX should we make an ISomething interface for this? Maybe maybe IReadable subclass that ISomething? |
---|
9 | def __init__(self, verifycap, storage_broker, secret_holder, |
---|
10 | terminator, history): |
---|
11 | assert isinstance(verifycap, uri.CHKFileVerifierURI) |
---|
12 | @@ -87,6 +88,8 @@ |
---|
13 | def raise_error(self): |
---|
14 | pass |
---|
15 | |
---|
16 | + def is_mutable(self): |
---|
17 | + return False |
---|
18 | |
---|
19 | def check_and_repair(self, monitor, verify=False, add_lease=False): |
---|
20 | verifycap = self._verifycap |
---|
21 | diff -rN -u old-1.9.2/src/allmydata/nodemaker.py new-1.9.2/src/allmydata/nodemaker.py |
---|
22 | --- old-1.9.2/src/allmydata/nodemaker.py 2012-10-27 21:48:02.774087918 -0600 |
---|
23 | +++ new-1.9.2/src/allmydata/nodemaker.py 2012-10-27 21:48:02.940753934 -0600 |
---|
24 | @@ -72,12 +72,12 @@ |
---|
25 | cap = uri.from_string(bigcap, deep_immutable=deep_immutable, |
---|
26 | name=name) |
---|
27 | node = self._create_from_single_cap(cap) |
---|
28 | - if node: |
---|
29 | - self._node_cache[memokey] = node # note: WeakValueDictionary |
---|
30 | - else: |
---|
31 | + if node is None: |
---|
32 | # don't cache UnknownNode |
---|
33 | node = UnknownNode(writecap, readcap, |
---|
34 | deep_immutable=deep_immutable, name=name) |
---|
35 | + elif node.is_mutable(): |
---|
36 | + self._node_cache[memokey] = node # note: WeakValueDictionary |
---|
37 | |
---|
38 | if self.blacklist: |
---|
39 | si = node.get_storage_index() |
---|