From 364afd0ba5df2f0d4fd39b0c56800fdc0fa61a54 Mon Sep 17 00:00:00 2001 From: David Vildebrand Date: Sat, 27 May 2023 11:44:16 +0200 Subject: [PATCH] Catch exceptions when writing metadata to file --- legendary/lfs/lgndry.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/legendary/lfs/lgndry.py b/legendary/lfs/lgndry.py index bc75263..1bdfd90 100644 --- a/legendary/lfs/lgndry.py +++ b/legendary/lfs/lgndry.py @@ -229,7 +229,11 @@ class LGDLFS: json_meta = meta.__dict__ self._game_metadata[app_name] = json_meta meta_file = os.path.join(self.path, 'metadata', f'{app_name}.json') - json.dump(json_meta, open(meta_file, 'w'), indent=2, sort_keys=True) + try: + json.dump(json_meta, open(meta_file, 'w'), indent=2, sort_keys=True) + except OSError as e: + self.log.error(f'Unable to write metadata to file: "{meta_file}" ! ' + f'(Error: {repr(e)})') def delete_game_meta(self, app_name): if app_name not in self._game_metadata: