From: Michal Cmarada Date: Mon, 1 Oct 2018 14:26:31 +0000 (+0200) Subject: Fix JVPP enum _host_to_net_ translation (VPP-1438) X-Git-Tag: v18.10-rc1~55 X-Git-Url: https://gerrit.fd.io/r/gitweb?p=vpp.git;a=commitdiff_plain;h=5507192339aed14634929b3e8d7c5d3e5ea8f997 Fix JVPP enum _host_to_net_ translation (VPP-1438) - use ordinal value of enumeration instead of accessing its value directly. Change-Id: I6327a8f7668852846907a92c2713de9ff90c1c75 Signed-off-by: Michal Cmarada --- diff --git a/extras/japi/java/jvpp/gen/jvppgen/jni_type_handlers_gen.py b/extras/japi/java/jvpp/gen/jvppgen/jni_type_handlers_gen.py index a76aadf468c..2447974d878 100755 --- a/extras/japi/java/jvpp/gen/jvppgen/jni_type_handlers_gen.py +++ b/extras/japi/java/jvpp/gen/jvppgen/jni_type_handlers_gen.py @@ -117,8 +117,8 @@ $json_definition static inline void _host_to_net_${c_name}(JNIEnv * env, jobject _host, vl_api_${c_name}_t * _net) { jclass enumClass = (*env)->FindClass(env, "${class_FQN}"); - jfieldID valueFieldId = (*env)->GetStaticFieldID(env, enumClass, "value", "${jni_signature}"); - ${jni_type} value = (*env)->GetStatic${jni_accessor}Field(env, enumClass, valueFieldId); + jmethodID getValueMethod = (*env)->GetMethodID(env, enumClass, "ordinal", "()I"); + ${jni_type} value = (*env)->CallIntMethod(env, _host, getValueMethod); ${swap}; }""")