diff --git a/steam/client/cdn.py b/steam/client/cdn.py index dbd09ab8..d8419c62 100644 --- a/steam/client/cdn.py +++ b/steam/client/cdn.py @@ -836,6 +836,12 @@ def async_fetch_manifest( else: manifest_gid = depot_info.get('manifests', {}).get(branch) + if isinstance(manifest_gid, dict): + # For some depots, Steam has started returning a dict + # {"public": {"gid": GID, "size": ..., "download": ...}, ...} + # instead of a simple map {"public": GID, ...} + manifest_gid = manifest_gid['gid'] + if manifest_gid is not None: tasks.append( self.gpool.spawn(