Fix exception when /etc/paths{,.d} is not readable on macOS

It may be present but not readable. This may occur when executing in a
sandbox that does not permit access.
This commit is contained in:
Andrew Marshall 2025-04-22 15:29:35 -04:00
parent c0d248fea2
commit 5c0b7297fe

View file

@ -670,7 +670,7 @@ def system_paths_on_macos() -> tuple[str, ...]:
def add_from_file(x: str) -> None:
try:
f = open(x)
except FileNotFoundError:
except (FileNotFoundError, PermissionError):
return
with f:
for line in f:
@ -681,7 +681,7 @@ def system_paths_on_macos() -> tuple[str, ...]:
entries.append(line)
try:
files = os.listdir('/etc/paths.d')
except FileNotFoundError:
except (FileNotFoundError, PermissionError):
files = []
for name in sorted(files):
add_from_file(os.path.join('/etc/paths.d', name))