]> arthur.barton.de Git - bup.git/commit - t/test-meta.sh
Fix xattr tests and bugs revealed (fully remove set -e from test-meta.sh).
authorRob Browning <rlb@defaultvalue.org>
Sun, 27 Oct 2013 18:23:20 +0000 (13:23 -0500)
committerRob Browning <rlb@defaultvalue.org>
Fri, 1 Nov 2013 23:24:16 +0000 (18:24 -0500)
commit43debddfc5af2936b9161bd25b60390ba6215eac
tree20c88787086ddaa3afcaf98c479e691d3445cc56
parentd919eeef1e32ae86ddd97a25405ecbe7ec2d454e
Fix xattr tests and bugs revealed (fully remove set -e from test-meta.sh).

Fixing the xattr tests to run correctly pointed out that bup stops
trying to apply metadata after the first failure (i.e. after any
metadata record application fails).  Change it so that bup always
tries every metadata record.  Otherwise, bup may skip some forms of
metadata without any notification -- and it shouldn't.  For example,
it shouldn't skip ACLs just because the current filesystem doesn't
support xattrs.

Fix two additional problems that were exposed by the changes described
above.

Check for EACCES when trying to apply an attr record, and properly
convert it to an ApplyError.  This problem was revealed by
test_apply_to_path_restricted_access.

Check for EACCES when trying to read the current filesystem xattrs
during the process of applying the metadata xattrs, and when
encountered, convert it to an ApplyError.

Signed-off-by: Rob Browning <rlb@defaultvalue.org>
lib/bup/metadata.py
lib/bup/t/tmetadata.py
t/test-meta.sh