mirror of
https://github.com/alibaba/testable-mock.git
synced 2025-03-25 01:00:24 +08:00
always skip null element when traveling class
This commit is contained in:
parent
e948e625ea
commit
b89daa22c3
@ -157,6 +157,9 @@ public class OmniConstructor {
|
||||
|
||||
private static <T> void handleCircleReference(T instance, Map<Class<?>, Object> classPool)
|
||||
throws IllegalAccessException {
|
||||
if (instance == null) {
|
||||
return;
|
||||
}
|
||||
classPool.put(instance.getClass(), instance);
|
||||
for (Field f : TypeUtil.getAllFields(instance.getClass())) {
|
||||
f.setAccessible(true);
|
||||
@ -171,7 +174,7 @@ public class OmniConstructor {
|
||||
} else if (!fieldType.isPrimitive() && !TypeUtil.isBasicType(fieldType)) {
|
||||
if (fieldIns == null && classPool.containsKey(fieldType)) {
|
||||
f.set(instance, classPool.get(fieldType));
|
||||
} else if (fieldIns != null && !classPool.containsKey(fieldType)) {
|
||||
} else if (!classPool.containsKey(fieldType)) {
|
||||
handleCircleReference(fieldIns, classPool);
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user