From 11d8f5293e63fd5ac46196ce1d42158bc45ba664 Mon Sep 17 00:00:00 2001 From: Nirvana Date: Wed, 4 Mar 2026 10:16:19 +0100 Subject: [PATCH] Add discovery --- lib/streaming_providers/base/vod_operations.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/lib/streaming_providers/base/vod_operations.py b/lib/streaming_providers/base/vod_operations.py index de29314..716fe26 100644 --- a/lib/streaming_providers/base/vod_operations.py +++ b/lib/streaming_providers/base/vod_operations.py @@ -97,9 +97,13 @@ class VodOperations: ) return children - # Resolve slugs → ids, then fetch the final node's children - resolved_ids = self._resolve_path_to_ids(provider_name, slug_segments) - children = provider.get_vod_category(resolved_ids) + # Pass slug segments directly to the provider. + # Providers whose content_ids are full route paths (e.g. Discovery+) + # will join the segments themselves into the correct CMS route. + # The old slug-walking approach (_resolve_path_to_ids) is bypassed + # because it fetches every intermediate level unnecessarily and fails + # when the provider's tree is too deep or slugs don't match exactly. + children = provider.get_vod_category(slug_segments) logger.info( f"Retrieved {len(children)} VOD entries from '{provider_name}' "