X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/7ba9ddb2180684b3fe1ab8e70b854d3f8558d8dc..74feb4bb13c3e42871675a3dc48915309696e866:/src/mc/Session.cpp diff --git a/src/mc/Session.cpp b/src/mc/Session.cpp index 8eca37c9aa..f08f806a6c 100644 --- a/src/mc/Session.cpp +++ b/src/mc/Session.cpp @@ -143,7 +143,7 @@ Session* Session::fork(std::function code) if (res == -1) throw simgrid::xbt::errno_error("Could not create socketpair"); - pid_t pid = do_fork([&] { + pid_t pid = do_fork([sockets, &code] { ::close(sockets[1]); setup_child_environment(sockets[0]); code(); @@ -159,7 +159,7 @@ Session* Session::fork(std::function code) // static Session* Session::spawnv(const char *path, char *const argv[]) { - return Session::fork([&] { + return Session::fork([path, argv] { execv(path, argv); }); } @@ -167,7 +167,7 @@ Session* Session::spawnv(const char *path, char *const argv[]) // static Session* Session::spawnvp(const char *file, char *const argv[]) { - return Session::fork([&] { + return Session::fork([file, argv] { execvp(file, argv); }); }