changeset 49307:6f2a57ba2d13

py3: catch PermissionError instead of checking errno == EACCES
author Manuel Jacob <me@manueljacob.de>
date Tue, 31 May 2022 23:38:51 +0200
parents 2e726c934fcd
children d2adebe35635
files mercurial/posix.py
diffstat 1 files changed, 7 insertions(+), 12 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial/posix.py	Tue May 31 22:50:01 2022 +0200
+++ b/mercurial/posix.py	Tue May 31 23:38:51 2022 +0200
@@ -302,18 +302,13 @@
                 try:
                     fullpath = os.path.join(cachedir, target)
                     open(fullpath, b'w').close()
-                except IOError as inst:
-                    # pytype: disable=unsupported-operands
-                    if inst[0] == errno.EACCES:
-                        # pytype: enable=unsupported-operands
-
-                        # If we can't write to cachedir, just pretend
-                        # that the fs is readonly and by association
-                        # that the fs won't support symlinks. This
-                        # seems like the least dangerous way to avoid
-                        # data loss.
-                        return False
-                    raise
+                except PermissionError:
+                    # If we can't write to cachedir, just pretend
+                    # that the fs is readonly and by association
+                    # that the fs won't support symlinks. This
+                    # seems like the least dangerous way to avoid
+                    # data loss.
+                    return False
             try:
                 os.symlink(target, name)
                 if cachedir is None: