Skip to content

Commit

Permalink
Merge branch '2.9' into 2.10
Browse files Browse the repository at this point in the history
  • Loading branch information
cowtowncoder committed Jul 30, 2019
2 parents 7bf799c + 68b1f71 commit 236127c
Show file tree
Hide file tree
Showing 4 changed files with 25 additions and 2 deletions.
7 changes: 6 additions & 1 deletion release-notes/CREDITS-2.x
Original file line number Diff line number Diff line change
Expand Up @@ -864,7 +864,12 @@ Daniil Barvitsky (dbarvitsky@github)

Edgar Asatryan (nstdio@github)
* Reported #2374: `ObjectMapper. getRegisteredModuleIds()` throws NPE if no modules registered
(2.9.10)
(2.9.9.1)

Michael Simons (michael-simons@github)
* Reported #2395: `NullPointerException` from `ResolvedRecursiveType` (regression due to
fix for #2331)
(2.9.9.3)

Christoph Breitkopf (bokesan@github)
* Reported #2217: Suboptimal memory allocation in `TextNode.getBinaryValue()`
Expand Down
5 changes: 5 additions & 0 deletions release-notes/VERSION-2.x
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,11 @@ Project: jackson-databind
#2339: Suboptimal return type for `ObjectNode.set()`
(reported by Victor N)

2.9.9.3 (not yet released)

#2395: `NullPointerException` from `ResolvedRecursiveType` (regression due to fix for #2331)
(reported by Michael S)

2.9.9.2 (27-Jul-2019)

#2331: `JsonMappingException` through nested getter with generic wildcard return type
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,16 +39,25 @@ public JavaType getSuperClass() {
// 23-Jul-2019, tatu: [databind#2331] Need to also delegate this...
@Override
public TypeBindings getBindings() {
return _referencedType.getBindings();
if (_referencedType != null) { // `null` before resolution [databind#2395]
return _referencedType.getBindings();
}
return super.getBindings();
}

@Override
public StringBuilder getGenericSignature(StringBuilder sb) {
if (_referencedType != null) {
return _referencedType.getGenericSignature(sb);
}
return _referencedType.getGenericSignature(sb);
}

@Override
public StringBuilder getErasedSignature(StringBuilder sb) {
if (_referencedType != null) {
return _referencedType.getErasedSignature(sb);
}
return _referencedType.getErasedSignature(sb);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -197,7 +197,11 @@ public TypeFactory withModifier(TypeModifier mod)
typeCache = null;
} else if (_modifiers == null) {
mods = new TypeModifier[] { mod };
// 29-Jul-2019, tatu: Actually I think we better clear cache in this case
// as well to ensure no leakage occurs (see [databind#2395])
typeCache = null;
} else {
// but may keep existing cache otherwise
mods = ArrayBuilders.insertInListNoDup(_modifiers, mod);
}
return new TypeFactory(typeCache, _parser, mods, _classLoader);
Expand Down

0 comments on commit 236127c

Please sign in to comment.