Skip to content

Commit 7a077bf

Browse files
authored
Merge pull request #1195 from zeitlinger/npe-in-resolve
fix NullPointerExceptions in resolveSchema
2 parents 787d1b5 + 4d5421f commit 7a077bf

File tree

1 file changed

+19
-15
lines changed

1 file changed

+19
-15
lines changed

modules/swagger-parser-v3/src/main/java/io/swagger/v3/parser/util/ResolverFully.java

Lines changed: 19 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,5 @@
11
package io.swagger.v3.parser.util;
22

3-
import static io.swagger.v3.parser.util.RefUtils.computeDefinitionName;
4-
import static io.swagger.v3.parser.util.RefUtils.computeRefFormat;
5-
import static io.swagger.v3.parser.util.RefUtils.isAnExternalRefFormat;
6-
7-
import java.util.ArrayList;
8-
import java.util.HashMap;
9-
import java.util.HashSet;
10-
import java.util.IdentityHashMap;
11-
import java.util.LinkedHashMap;
12-
import java.util.List;
13-
import java.util.Map;
14-
import java.util.Set;
15-
import java.util.stream.Collectors;
16-
173
import io.swagger.v3.oas.models.Components;
184
import io.swagger.v3.oas.models.OpenAPI;
195
import io.swagger.v3.oas.models.Operation;
@@ -37,6 +23,20 @@
3723
import org.slf4j.Logger;
3824
import org.slf4j.LoggerFactory;
3925

26+
import java.util.ArrayList;
27+
import java.util.HashMap;
28+
import java.util.HashSet;
29+
import java.util.IdentityHashMap;
30+
import java.util.LinkedHashMap;
31+
import java.util.List;
32+
import java.util.Map;
33+
import java.util.Set;
34+
import java.util.stream.Collectors;
35+
36+
import static io.swagger.v3.parser.util.RefUtils.computeDefinitionName;
37+
import static io.swagger.v3.parser.util.RefUtils.computeRefFormat;
38+
import static io.swagger.v3.parser.util.RefUtils.isAnExternalRefFormat;
39+
4040
public class ResolverFully {
4141
private static final Logger LOGGER = LoggerFactory.getLogger(ResolverFully.class);
4242

@@ -275,10 +275,14 @@ public Parameter resolveParameter(Parameter parameter){
275275
}
276276

277277
public Schema resolveSchema(Schema schema) {
278+
if (schema == null) {
279+
return null;
280+
}
281+
278282
if(schema.get$ref() != null) {
279283
String ref= schema.get$ref();
280284
ref = ref.substring(ref.lastIndexOf("/") + 1);
281-
Schema resolved = schemas.get(ref);
285+
Schema resolved = schemas != null ? schemas.get(ref) : null;
282286

283287
if (resolved != null) {
284288

0 commit comments

Comments
 (0)