add small exception handler for unable to open folder

This commit is contained in:
bsjohnson20
2025-07-23 17:41:53 +01:00
parent 26840e7a40
commit d977b2b621
+14 -11
View File
@@ -101,15 +101,18 @@ def fetchall_vdfs(steam_vdf_json: dict):
for library in steam_vdf_json["libraryfolders"]:
path = steam_vdf_json['libraryfolders'][library]['path']
steamapps = os.path.join(path, "steamapps")
for game in os.listdir(steamapps):
if game.endswith(".acf"):
gameID = int(game.split('.')[0].split('_')[1])
parsed_game = read_game_vdf(gameID, steam_vdf_json, steamapps, game)
parsed_game['acf_path'] = os.path.join(steamapps, game)
parsed_game['root_steam_folder'] = path
parsed_game['true_path'] = os.path.join(steamapps, "common", parsed_game['installdir'])
parsed_game['compatdata_path'] = os.path.join(steamapps, "compatdata", str(gameID)) if os.path.exists(os.path.join(steamapps, "compatdata", str(gameID))) else None
parsed_game['workshop_path'] = os.path.join(steamapps, "workshop", "content", str(gameID)) if os.path.exists(os.path.join(steamapps, "workshop", "content", str(gameID))) else ""
games.append(parsed_game)
# print("Game name:", parsed_game['name'], "ID:", gameID, "Path:", parsed_game['true_path'])
try:
for game in os.listdir(steamapps):
if game.endswith(".acf"):
gameID = int(game.split('.')[0].split('_')[1])
parsed_game = read_game_vdf(gameID, steam_vdf_json, steamapps, game)
parsed_game['acf_path'] = os.path.join(steamapps, game)
parsed_game['root_steam_folder'] = path
parsed_game['true_path'] = os.path.join(steamapps, "common", parsed_game['installdir'])
parsed_game['compatdata_path'] = os.path.join(steamapps, "compatdata", str(gameID)) if os.path.exists(os.path.join(steamapps, "compatdata", str(gameID))) else None
parsed_game['workshop_path'] = os.path.join(steamapps, "workshop", "content", str(gameID)) if os.path.exists(os.path.join(steamapps, "workshop", "content", str(gameID))) else ""
games.append(parsed_game)
# print("Game name:", parsed_game['name'], "ID:", gameID, "Path:", parsed_game['true_path'])
except Exception as e:
print(f"Error processing game {steamapps}: {e}")
return games