sources: Handle all OSErrors when reading files

This commit is contained in:
kramo
2025-12-22 20:54:13 +01:00
parent ea0e5b5c47
commit 84972c06d6
2 changed files with 4 additions and 4 deletions

View File

@@ -39,7 +39,7 @@ class Application(Adw.Application):
for source in sources:
try:
yield from source.get_games(skip_ids=skip_ids)
except FileNotFoundError:
except OSError:
continue
@override

View File

@@ -66,7 +66,7 @@ class _StoreSource(_Source):
try:
with (_config_dir() / cls._INSTALLED_PATH).open() as fp:
data = json.load(fp)
except (FileNotFoundError, JSONDecodeError):
except (OSError, JSONDecodeError):
return set()
return set(cls._installed(data))
@@ -130,7 +130,7 @@ def _hidden_app_names() -> Generator[str]:
try:
with (_config_dir() / "store" / "config.json").open() as fp:
config = json.load(fp)
except (FileNotFoundError, JSONDecodeError):
except (OSError, JSONDecodeError):
return
with suppress(TypeError, KeyError):
@@ -145,7 +145,7 @@ def _games_from(
try:
with (_config_dir() / source.library_path()).open() as fp:
library = json.load(fp)
except (FileNotFoundError, JSONDecodeError):
except (OSError, JSONDecodeError):
return
if not isinstance(library := library.get(source.LIBRARY_KEY), Iterable):