while ((action = xbt_swag_extract(set)))
SIMIX_simcall_post((smx_action_t) action->data);
set = model->states.done_action_set;
- while ((action = xbt_swag_extract(set)))
- SIMIX_simcall_post((smx_action_t) action->data);
+
+ while ((action = xbt_swag_extract(set))) {
+ if (action->data == NULL)
+ XBT_DEBUG("probably vcpu's action %p, skip", action);
+ else
+ SIMIX_simcall_post((smx_action_t) action->data);
+ }
}
/* Autorestart all process */
/* Clean processes to destroy */
SIMIX_process_empty_trash();
+
+ XBT_DEBUG("### time %f, empty %d", time, xbt_dynar_is_empty(simix_global->process_to_run));
+ // !(time == -1.0 && xbt_dynar_is_empty())
+
+
} while (time != -1.0 || !xbt_dynar_is_empty(simix_global->process_to_run));
if (xbt_swag_size(simix_global->process_list) != 0) {