diff options
Diffstat (limited to 'tools/patch/patches')
-rw-r--r-- | tools/patch/patches/070-don-t-fail-hard-on-EACCES-when-copying-xattrs.patch | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/tools/patch/patches/070-don-t-fail-hard-on-EACCES-when-copying-xattrs.patch b/tools/patch/patches/070-don-t-fail-hard-on-EACCES-when-copying-xattrs.patch new file mode 100644 index 0000000000..e19a9c0845 --- /dev/null +++ b/tools/patch/patches/070-don-t-fail-hard-on-EACCES-when-copying-xattrs.patch @@ -0,0 +1,33 @@ +From f42cbe1a91a3a6f79d1eec594ce7c72aec79179b Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Thomas=20Wei=C3=9Fschuh?= <thomas@t-8ch.de> +Date: Wed, 9 Nov 2022 05:08:22 +0100 +Subject: [PATCH] don't fail hard on EACCES when copying xattrs + +On btrfs the xattr "btrfs.compressed" requires privileges to set, +otherwise EACCES is returned. +When patch tries to do copy this attribute it receives the error and +aborts. +--- + src/util.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +--- a/src/util.c ++++ b/src/util.c +@@ -182,7 +182,7 @@ copy_attr_error (struct error_context *c + int err = errno; + va_list ap; + +- if (err != ENOSYS && err != ENOTSUP && err != EPERM) ++ if (err != ENOSYS && err != ENOTSUP && err != EPERM && err != EACCES) + { + /* use verror module to print error message */ + va_start (ap, fmt); +@@ -284,7 +284,7 @@ set_file_attributes (char const *to, enu + } + if (attr & FA_XATTRS) + if (copy_attr (from, to) != 0 +- && errno != ENOSYS && errno != ENOTSUP && errno != EPERM) ++ && errno != ENOSYS && errno != ENOTSUP && errno != EPERM && errno != EACCES) + fatal_exit (0); + if (attr & FA_MODE) + { |