diff --git a/setup.py b/setup.py index f1d052b8..1a39857b 100644 --- a/setup.py +++ b/setup.py @@ -381,7 +381,8 @@ class BuildExeCommand(cx_Freeze.command.build_exe.build_exe): file_name = os.path.split(os.path.dirname(worldtype.__file__))[1] world_directory = self.libfolder / "worlds" / file_name if os.path.isfile(world_directory / "archipelago.json"): - manifest = json.load(open(world_directory / "archipelago.json")) + with open(os.path.join(world_directory, "archipelago.json"), mode="r", encoding="utf-8") as manifest_file: + manifest = json.load(manifest_file) assert "game" in manifest, ( f"World directory {world_directory} has an archipelago.json manifest file, but it" diff --git a/worlds/LauncherComponents.py b/worlds/LauncherComponents.py index 1bc78be1..2ec70832 100644 --- a/worlds/LauncherComponents.py +++ b/worlds/LauncherComponents.py @@ -271,7 +271,8 @@ if not is_frozen(): file_name = os.path.split(os.path.dirname(worldtype.__file__))[1] world_directory = os.path.join("worlds", file_name) if os.path.isfile(os.path.join(world_directory, "archipelago.json")): - manifest = json.load(open(os.path.join(world_directory, "archipelago.json"))) + with open(os.path.join(world_directory, "archipelago.json"), mode="r", encoding="utf-8") as manifest_file: + manifest = json.load(manifest_file) assert "game" in manifest, ( f"World directory {world_directory} has an archipelago.json manifest file, but it" diff --git a/worlds/__init__.py b/worlds/__init__.py index b7ceb46a..72ac8181 100644 --- a/worlds/__init__.py +++ b/worlds/__init__.py @@ -122,7 +122,8 @@ for world_source in world_sources: for dirpath, dirnames, filenames in os.walk(world_source.resolved_path): for file in filenames: if file.endswith("archipelago.json"): - manifest = json.load(open(os.path.join(dirpath, file), "r")) + with open(os.path.join(dirpath, file), mode="r", encoding="utf-8") as manifest_file: + manifest = json.load(manifest_file) break if manifest: break