diff --git a/mobile/src/changelog.ts b/mobile/src/changelog.ts index 3278fec..978cde7 100644 --- a/mobile/src/changelog.ts +++ b/mobile/src/changelog.ts @@ -29,6 +29,13 @@ export type ChangelogEntry = { }; export const CHANGELOG: ChangelogEntry[] = [ + { + id: '2026-09-08a', + date: 'September 2026', + items: [ + 'Fixed a crash when opening a studio\'s movie list right after browsing that studio\'s Movies tab. The two screens were sharing a cache entry with different shapes.', + ], + }, { id: '2026-09-07h', date: 'September 2026', diff --git a/mobile/src/screens/StudioMoviesScreen.tsx b/mobile/src/screens/StudioMoviesScreen.tsx index 83890b7..68bb6a2 100644 --- a/mobile/src/screens/StudioMoviesScreen.tsx +++ b/mobile/src/screens/StudioMoviesScreen.tsx @@ -68,7 +68,11 @@ export function StudioMoviesScreen() { hasNextPage, isFetchingNextPage, } = useInfiniteQuery({ - queryKey: ['studio-movies', slug], + // NIE ['studio-movies', slug]: ten klucz ma zwykle useQuery w StudioScenesScreen + // (zakladka Movies) i trzyma tam {items,...} bez `pages`. Po przejsciu StudioScenes -> + // MovieDetail -> studio ta infinite query dostawala z cache cudzy ksztalt i react-query + // wywalal sie na `pages.length` (Sentry 140915208, 6 osob, od 2026-08-16). + queryKey: ['studio-movies-pages', slug], queryFn: ({ pageParam = 1 }) => client.listMovies({ studio_slugs: [slug],