From 3df3b91e6a0d84bcb954ec894d17f4603bdf428f Mon Sep 17 00:00:00 2001 From: Allan Lago <35788148+alago1@users.noreply.github.com> Date: Mon, 24 Apr 2023 18:45:38 -0600 Subject: gh-82814: fix shutil access error on WSL (#103790) gh-82814: Adds `errno.EACCES` to the list of ignored errors on `_copyxattr`. EPERM and EACCES are different constants but in general should be treated the same. News entry authored by: Gregory P. Smith --- Lib/shutil.py | 2 +- Misc/NEWS.d/next/Windows/2023-04-24-15-51-11.gh-issue-82814.GI3UkZ.rst | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) create mode 100644 Misc/NEWS.d/next/Windows/2023-04-24-15-51-11.gh-issue-82814.GI3UkZ.rst diff --git a/Lib/shutil.py b/Lib/shutil.py index c75ea4d..7d1a3d0 100644 --- a/Lib/shutil.py +++ b/Lib/shutil.py @@ -332,7 +332,7 @@ if hasattr(os, 'listxattr'): os.setxattr(dst, name, value, follow_symlinks=follow_symlinks) except OSError as e: if e.errno not in (errno.EPERM, errno.ENOTSUP, errno.ENODATA, - errno.EINVAL): + errno.EINVAL, errno.EACCES): raise else: def _copyxattr(*args, **kwargs): diff --git a/Misc/NEWS.d/next/Windows/2023-04-24-15-51-11.gh-issue-82814.GI3UkZ.rst b/Misc/NEWS.d/next/Windows/2023-04-24-15-51-11.gh-issue-82814.GI3UkZ.rst new file mode 100644 index 0000000..5bd005f --- /dev/null +++ b/Misc/NEWS.d/next/Windows/2023-04-24-15-51-11.gh-issue-82814.GI3UkZ.rst @@ -0,0 +1,3 @@ +Fix a potential ``[Errno 13] Permission denied`` when using :func:`shutil.copystat` +within Windows Subsystem for Linux (WSL) on a mounted filesystem by adding +``errno.EACCES`` to the list of ignored errors within the internal implementation. -- cgit v0.12