From f705935e19052f2f1e90c7640152a5513d872f2a Mon Sep 17 00:00:00 2001 From: Pierre Ricadat Date: Wed, 16 Jun 2021 11:12:32 +0900 Subject: [PATCH] Do not try to parse the result when data is None --- client/src/main/scala/caliban/client/SelectionBuilder.scala | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/client/src/main/scala/caliban/client/SelectionBuilder.scala b/client/src/main/scala/caliban/client/SelectionBuilder.scala index 5fbe750a70..acbb2e4c04 100644 --- a/client/src/main/scala/caliban/client/SelectionBuilder.scala +++ b/client/src/main/scala/caliban/client/SelectionBuilder.scala @@ -58,7 +58,8 @@ sealed trait SelectionBuilder[-Origin, +A] { self => .decode[GraphQLResponse](payload) .left .map(ex => DecodingError("Json deserialization error", Some(ex))) - data <- if (parsed.errors.nonEmpty && parsed.data.contains(__Value.__NullValue)) Left(ServerError(parsed.errors)) + data <- if (parsed.errors.nonEmpty && parsed.data.forall(_ == __Value.__NullValue)) + Left(ServerError(parsed.errors)) else Right(parsed.data) objectValue <- data match { case Some(o: __ObjectValue) => Right(o)