Skip to content

Commit f45d701

Browse files
gh-action-runnergh-action-runner
authored andcommitted
Squashed 'apollo-ios/' changes from 69f09c7a..59a26da3
59a26da3 fix: Cache read null list item (#637) git-subtree-dir: apollo-ios git-subtree-split: 59a26da3d7251dbb587c1e186f449657c8ecb091
1 parent fa7513c commit f45d701

File tree

1 file changed

+7
-3
lines changed

1 file changed

+7
-3
lines changed

Sources/Apollo/ExecutionSources/CacheDataExecutionSource.swift

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,11 +41,15 @@ struct CacheDataExecutionSource: GraphQLExecutionSource {
4141
case let reference as CacheReference:
4242
return deferredResolve(reference: reference).map { $0 as AnyHashable }
4343

44-
case let referenceList as [CacheReference]:
44+
case let referenceList as [JSONValue]:
4545
return referenceList
4646
.enumerated()
4747
.deferredFlatMap { index, element in
48-
self.deferredResolve(reference: element)
48+
guard let cacheReference = element as? CacheReference else {
49+
return .immediate(.success(element))
50+
}
51+
52+
return self.deferredResolve(reference: cacheReference)
4953
.mapError { error in
5054
if !(error is GraphQLExecutionError) {
5155
return GraphQLExecutionError(
@@ -55,7 +59,7 @@ struct CacheDataExecutionSource: GraphQLExecutionSource {
5559
} else {
5660
return error
5761
}
58-
}
62+
}.map { $0 as AnyHashable }
5963
}.map { $0._asAnyHashable }
6064

6165
default:

0 commit comments

Comments
 (0)