mirror of
https://github.com/tahoe-lafs/tahoe-lafs.git
synced 2025-02-20 17:52:50 +00:00
SFTP: suppress NoSuchChildError if heisenfile attributes have been updated in setAttrs, in the case where the parent is available.
This commit is contained in:
parent
195b4afa8f
commit
4b5927fdb8
@ -1162,6 +1162,7 @@ class SFTPUserHandler(ConchUser, PrefixingLogMixin):
|
||||
|
||||
def _done(ign):
|
||||
self.log("done %r" % (request,), level=OPERATIONAL)
|
||||
# TODO: this should not return True if only_if_at caused all files to be skipped.
|
||||
return len(files) > 0
|
||||
d.addBoth(_done)
|
||||
return d
|
||||
@ -1707,7 +1708,14 @@ class SFTPUserHandler(ConchUser, PrefixingLogMixin):
|
||||
desired_metadata = _attrs_to_metadata(attrs)
|
||||
if noisy: self.log("desired_metadata = %r" % (desired_metadata,), level=NOISY)
|
||||
|
||||
return parent_or_node.set_metadata_for(childname, desired_metadata)
|
||||
d3 = parent_or_node.set_metadata_for(childname, desired_metadata)
|
||||
def _nosuch(err):
|
||||
if updated_heisenfiles:
|
||||
err.trap(NoSuchChildError)
|
||||
else:
|
||||
return err
|
||||
d3.addErrback(_nosuch)
|
||||
return d3
|
||||
d2.addCallback(_update)
|
||||
d2.addCallback(lambda ign: None)
|
||||
return d2
|
||||
|
Loading…
x
Reference in New Issue
Block a user