diff --git a/Lib/_pyio.py b/Lib/_pyio.py index 5db8ce9244b5ba..7ddc9b6fb92d3f 100644 --- a/Lib/_pyio.py +++ b/Lib/_pyio.py @@ -266,7 +266,7 @@ def open(file, mode="r", buffering=-1, encoding=None, errors=None, result = text text.mode = mode return result - except: + except (ValueError, OSError, TypeError, ImportError, LookupError): result.close() raise @@ -1619,7 +1619,7 @@ def __init__(self, file, mode='r', closefd=True, opener=None): except OSError as e: if e.errno != errno.ESPIPE: raise - except: + except (ValueError, TypeError, IsADirectoryError, OSError): self._stat_atopen = None if owned_fd is not None: os.close(owned_fd)