From: alegrand Date: Sat, 6 Jun 2009 13:44:06 +0000 (+0000) Subject: Check that a host is available before launching a process. X-Git-Tag: SVN~1328 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/3290913dede085dd2e29b466a1e0d132d4eb2942 Check that a host is available before launching a process. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@6312 48e7efb5-ca39-0410-a469-dd3cf9ba447f --- diff --git a/src/simix/smx_process.c b/src/simix/smx_process.c index eb7799fdb9..0dad0f0857 100644 --- a/src/simix/smx_process.c +++ b/src/simix/smx_process.c @@ -58,10 +58,17 @@ smx_process_t SIMIX_process_create(const char *name, const char *hostname, int argc, char **argv, xbt_dict_t properties) { - smx_simdata_process_t simdata = xbt_new0(s_smx_simdata_process_t, 1); - smx_process_t process = xbt_new0(s_smx_process_t, 1); + smx_simdata_process_t simdata = NULL; + smx_process_t process = NULL; smx_process_t self = NULL; smx_host_t host = SIMIX_host_get_by_name(hostname); + + if (!SIMIX_host_get_state(host)) { + WARN2("Cannot launch process '%s' on failed host '%s'", name, hostname); + return NULL; + } + simdata = xbt_new0(s_smx_simdata_process_t, 1); + process = xbt_new0(s_smx_process_t, 1); /*char alias[MAX_ALIAS_NAME + 1] = {0}; msg_mailbox_t mailbox; */