Skip to content

Commit 2a63b4c

Browse files
committed
HHH-20209 Ensure JavaTypeRegistry#resolveDescriptor always returns same instance
1 parent 13d232b commit 2a63b4c

1 file changed

Lines changed: 3 additions & 2 deletions

File tree

hibernate-core/src/main/java/org/hibernate/type/descriptor/java/spi/JavaTypeRegistry.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -106,8 +106,9 @@ public <J> JavaType<J> resolveDescriptor(Type javaType, Supplier<JavaType<J>> cr
106106
}
107107

108108
final JavaType<J> created = creator.get();
109-
descriptorsByType.put( javaType, created );
110-
return created;
109+
final JavaType<?> cachedNew = descriptorsByType.putIfAbsent( javaType, created );
110+
//noinspection unchecked
111+
return cachedNew == null ? created : (JavaType<J>) cachedNew;
111112
}
112113

113114
public <J> JavaType<J> resolveDescriptor(Type javaType) {

0 commit comments

Comments
 (0)