Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Fix errors caught by java -Xcheck:jni.
[simgrid.git] / src / bindings / java / jmsg_process.c
index 7e40aec..2f6216e 100644 (file)
@@ -348,6 +348,8 @@ Java_org_simgrid_msg_Process_waitFor(JNIEnv * env, jobject jprocess,
 {
   msg_error_t rv;
   rv = MSG_process_sleep((double)jseconds);
 {
   msg_error_t rv;
   rv = MSG_process_sleep((double)jseconds);
+  if ((*env)->ExceptionOccurred(env))
+    return;
   if (rv != MSG_OK) {
     XBT_DEBUG("Status NOK");
     jmsg_throw_status(env,rv);
   if (rv != MSG_OK) {
     XBT_DEBUG("Status NOK");
     jmsg_throw_status(env,rv);
@@ -389,6 +391,7 @@ Java_org_simgrid_msg_Process_migrate(JNIEnv * env,
   msg_error_t rv = MSG_process_migrate(process, host);
   if (rv != MSG_OK) {
     jmsg_throw_status(env,rv);
   msg_error_t rv = MSG_process_migrate(process, host);
   if (rv != MSG_OK) {
     jmsg_throw_status(env,rv);
+    return;
   }
   /* change the host java side */
   (*env)->SetObjectField(env, jprocess, jprocess_field_Process_host, jhost);
   }
   /* change the host java side */
   (*env)->SetObjectField(env, jprocess, jprocess_field_Process_host, jhost);