new_state->nb_processes = xbt_swag_size(simix_global->process_list);
} else {
MC_process_smx_refresh(&mc_model_checker->process);
- new_state->nb_processes = xbt_dynar_length(mc_model_checker->process.smx_process_infos);
+ new_state->nb_processes = xbt_dynar_length(
+ mc_model_checker->process.smx_process_infos);
}
new_state->system_state = MC_take_snapshot(mc_stats->expanded_states);
pair->heap_bytes_used = mmalloc_get_bytes_used_remote(
MC_process_get_heap(process)->heaplimit,
MC_process_get_malloc_info(process));
- pair->nb_processes = xbt_swag_size(simix_global->process_list);
+ if (MC_process_is_self(&mc_model_checker->process)) {
+ pair->nb_processes = xbt_swag_size(simix_global->process_list);
+ } else {
+ MC_process_smx_refresh(&mc_model_checker->process);
+ pair->nb_processes = xbt_dynar_length(
+ mc_model_checker->process.smx_process_infos);
+ }
pair->automaton_state = automaton_state;
pair->num = pair_num;
pair->other_num = -1;
return new_state->other_num;
} */
- if(!partial_comm && initial_global_state->initial_communications_pattern_done){
+ if (_sg_mc_safety || (!partial_comm
+ && initial_global_state->initial_communications_pattern_done)) {
cursor = min;
while (cursor <= max) {