From: alegrand Date: Sat, 15 Mar 2008 20:42:38 +0000 (+0000) Subject: Handle action whose latency is 0. X-Git-Tag: v3.3~570 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/e08ccfc85466d59704df52779255e26a2e4383af?ds=inline Handle action whose latency is 0. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@5307 48e7efb5-ca39-0410-a469-dd3cf9ba447f --- diff --git a/src/surf/network_constant.c b/src/surf/network_constant.c index cf35b48dcc..342fae9c5f 100644 --- a/src/surf/network_constant.c +++ b/src/surf/network_constant.c @@ -224,13 +224,19 @@ static surf_action_t communicate(void *src, void *dst, double size, action->generic_action.model_type = (surf_model_t) surf_network_model; action->suspended = 0; - action->generic_action.state_set = + + action->latency = random_generate(random_latency); + action->lat_init = action->latency; + + if(action->latency<=0.0) + action->generic_action.state_set = + surf_network_model->common_public->states.done_action_set; + else + action->generic_action.state_set = surf_network_model->common_public->states.running_action_set; xbt_swag_insert(action, action->generic_action.state_set); - action->latency = random_generate(random_latency); - action->lat_init = action->latency; XBT_OUT;