From bfaab215899423e9e25e9998ae9c5aef445de39d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Freilichtb=C3=BChne?= <52177341+Freilichtbuehne@users.noreply.github.com> Date: Thu, 29 May 2025 00:13:03 +0200 Subject: [PATCH] Fix: Add exception to `utime` in `copy_basic_file_stats` (#10070) --- src/documents/utils.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/documents/utils.py b/src/documents/utils.py index e75194d82..04aa95bce 100644 --- a/src/documents/utils.py +++ b/src/documents/utils.py @@ -23,11 +23,17 @@ def copy_basic_file_stats(source: Path | str, dest: Path | str) -> None: The extended attribute copy does weird things with SELinux and files copied from temporary directories and copystat doesn't allow disabling - these copies + these copies. + + If there is a PermissionError, skip copying file stats. """ source, dest = _coerce_to_path(source, dest) src_stat = source.stat() - utime(dest, ns=(src_stat.st_atime_ns, src_stat.st_mtime_ns)) + + try: + utime(dest, ns=(src_stat.st_atime_ns, src_stat.st_mtime_ns)) + except PermissionError: + pass def copy_file_with_basic_stats(