#ifdef __linux__
// Make sure we do not outlive our parent:
sigset_t mask;
- sigset_t orig_mask;
-
sigemptyset (&mask);
- if (sigprocmask(SIG_BLOCK, &mask, &orig_mask) < 0) {
+ if (sigprocmask(SIG_SETMASK, &mask, nullptr) < 0) {
std::perror ("sigprocmask");
return SIMGRID_MC_EXIT_ERROR;
}
xbt_die("MC server already present");
try {
mc_mode = MC_MODE_SERVER;
- mc_model_checker = new simgrid::mc::ModelChecker(child, socket);
+ std::unique_ptr<simgrid::mc::Process> process(new simgrid::mc::Process(child, socket));
+ process->privatized(sg_cfg_get_boolean("smpi/privatize_global_variables"));
+ mc_model_checker = new simgrid::mc::ModelChecker(std::move(process));
mc_model_checker->start();
int res = 0;
if (_sg_mc_comms_determinism || _sg_mc_send_determinism)