Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f23f00a1 authored by Tadashi G. Takaoka's avatar Tadashi G. Takaoka
Browse files

Fix reflection method invokation

Either of Method.invoke, Field.get and Field.set can accept null as
receiver.

Change-Id: I4539dcc95a794f6ee84cf4e7aabf4e8f0206728f
parent 05c9b018
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -108,7 +108,7 @@ public class CompatUtils {

    public static Object invoke(
            Object receiver, Object defaultValue, Method method, Object... args) {
        if (receiver == null || method == null) return defaultValue;
        if (method == null) return defaultValue;
        try {
            return method.invoke(receiver, args);
        } catch (IllegalArgumentException e) {
@@ -124,7 +124,7 @@ public class CompatUtils {
    }

    public static Object getFieldValue(Object receiver, Object defaultValue, Field field) {
        if (receiver == null || field == null) return defaultValue;
        if (field == null) return defaultValue;
        try {
            return field.get(receiver);
        } catch (IllegalArgumentException e) {
@@ -137,7 +137,7 @@ public class CompatUtils {
    }

    public static void setFieldValue(Object receiver, Field field, Object value) {
        if (receiver == null || field == null) return;
        if (field == null) return;
        try {
            field.set(receiver, value);
        } catch (IllegalArgumentException e) {