X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/8f4c00936fdabbd005cbf15ca132ceb248f72dcd..0f83a8218acedbbea411208a0a9bf89c4aca9455:/src/bindings/java/jmsg_host.cpp?ds=sidebyside diff --git a/src/bindings/java/jmsg_host.cpp b/src/bindings/java/jmsg_host.cpp index 6a095c5e2e..938391c5c2 100644 --- a/src/bindings/java/jmsg_host.cpp +++ b/src/bindings/java/jmsg_host.cpp @@ -299,37 +299,28 @@ JNIEXPORT jobjectArray JNICALL Java_org_simgrid_msg_Host_getStorageContent(JNIEn JNIEXPORT jobjectArray JNICALL Java_org_simgrid_msg_Host_all(JNIEnv * env, jclass cls_arg) { - int index; - jobjectArray jtable; - jobject jhost; - jstring jname; - msg_host_t host; xbt_dynar_t table = MSG_hosts_as_dynar(); int count = xbt_dynar_length(table); jclass cls = jxbt_get_class(env, "org/simgrid/msg/Host"); - - if (!cls) { + if (!cls) return nullptr; - } - jtable = env->NewObjectArray((jsize) count, cls, nullptr); + jobjectArray jtable = env->NewObjectArray((jsize)count, cls, nullptr); if (!jtable) { jxbt_throw_jni(env, "Hosts table allocation failed"); return nullptr; } - for (index = 0; index < count; index++) { - host = xbt_dynar_get_as(table,index,msg_host_t); - jhost = (jobject) host->extension(JAVA_HOST_LEVEL); + for (int index = 0; index < count; index++) { + msg_host_t host = xbt_dynar_get_as(table, index, msg_host_t); + jobject jhost = static_cast(host->extension(JAVA_HOST_LEVEL)); if (!jhost) { - jname = env->NewStringUTF(host->cname()); - - jhost = Java_org_simgrid_msg_Host_getByName(env, cls_arg, jname); - /* FIXME: leak of jname ? */ + jstring jname = env->NewStringUTF(host->cname()); + jhost = Java_org_simgrid_msg_Host_getByName(env, cls_arg, jname); } env->SetObjectArrayElement(jtable, index, jhost);