- if (!xbt_dynar_is_empty(simcall_comm_waitany__get__comms(req))) {
- p = pointer_to_string(xbt_dynar_get_as
- (simcall_comm_waitany__get__comms(req), value,
- smx_synchro_t));
- args =
- bprintf("comm=%s (%d of %lu)", p, value + 1,
- xbt_dynar_length(simcall_comm_waitany__get__comms(req)));
+ s_xbt_dynar_t comms;
+ MC_process_read_simple(&mc_model_checker->process,
+ &comms, simcall_comm_waitany__get__comms(req), sizeof(comms));
+ if (!xbt_dynar_is_empty(&comms)) {
+ smx_synchro_t remote_sync;
+ MC_process_read_dynar_element(&mc_model_checker->process,
+ &remote_sync, simcall_comm_waitany__get__comms(req), value);
+ char* p = pointer_to_string(remote_sync);
+ args = bprintf("comm=%s (%d of %lu)",
+ p, value + 1, xbt_dynar_length(&comms));
+ xbt_free(p);