Skip to content

Commit b5865e8

Browse files
Added check
1 parent 262023a commit b5865e8

File tree

1 file changed

+7
-0
lines changed

1 file changed

+7
-0
lines changed

java/src/main/java/io/github/toolfactory/jvm/DriverAbst.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333
import java.lang.reflect.Constructor;
3434
import java.lang.reflect.Field;
3535
import java.lang.reflect.Method;
36+
import java.lang.reflect.Modifier;
3637
import java.net.URL;
3738
import java.util.Collection;
3839
import java.util.HashMap;
@@ -776,6 +777,9 @@ public CleanableSupplier<Collection<Class<?>>> getLoadedClassesRetriever(ClassLo
776777
@Override
777778
public <T> T getFieldValue(Object target, Field field) {
778779
BiFunction<Object, Field, Object> fieldValueRetriever = this.fieldValueRetriever;
780+
if (target == null && !Modifier.isStatic(field.getModifiers())) {
781+
throw new IllegalArgumentException("Target cannot be null when the field is not static");
782+
}
779783
try {
780784
return (T)fieldValueRetriever.apply(target, field);
781785
} catch (NullPointerException exc) {
@@ -796,6 +800,9 @@ public <T> T getFieldValue(Object target, Field field) {
796800
@Override
797801
public void setFieldValue(Object target, Field field, Object value) {
798802
TriConsumer<Object, Field, Object> fieldValueSetter = this.fieldValueSetter;
803+
if (target == null && !Modifier.isStatic(field.getModifiers())) {
804+
throw new IllegalArgumentException("Target cannot be null when the field is not static");
805+
}
799806
try {
800807
fieldValueSetter.accept(target, field, value);
801808
} catch (NullPointerException exc) {

0 commit comments

Comments
 (0)