X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/ec16845133f5f1b5262d2d77d8ba22824fa8a446..2d16ebcee6bde01575b4cd88a853e1ac1c2532bf:/src/gras/Virtu/process.c?ds=sidebyside diff --git a/src/gras/Virtu/process.c b/src/gras/Virtu/process.c index 39615deceb..24c0f62f75 100644 --- a/src/gras/Virtu/process.c +++ b/src/gras/Virtu/process.c @@ -10,7 +10,7 @@ #include "xbt/sysdep.h" #include "xbt/log.h" #include "gras/transport.h" -#include "gras/datadesc.h" +#include "xbt/datadesc.h" #include "gras/messages.h" #include "gras_modinter.h" @@ -89,7 +89,6 @@ void *gras_libdata_by_name_from_procdata(const char *name, gras_procdata_t * pd) { void *res = NULL; - xbt_ex_t e; if (xbt_set_length(pd->libdata) < xbt_dynar_length(_gras_procdata_fabrics)) { /* Damn, some new modules were added since procdata_init(). Amok? */ @@ -99,7 +98,7 @@ void *gras_libdata_by_name_from_procdata(const char *name, TRY { res = xbt_set_get_by_name(pd->libdata, name); } - CATCH(e) { + CATCH_ANONYMOUS { RETHROWF("Cannot retrieve the libdata associated to %s: %s", name); } return res; @@ -125,7 +124,6 @@ void gras_procdata_init() unsigned int cursor; - xbt_ex_t e; xbt_set_elm_t elem; if (!pd->libdata) { @@ -134,7 +132,6 @@ void gras_procdata_init() } xbt_dynar_foreach(_gras_procdata_fabrics, cursor, fab) { - volatile int found = 0; if (cursor + 1 <= xbt_set_length(pd->libdata)) { XBT_DEBUG("Skip fabric %d: there is already %ld libdata", @@ -144,23 +141,16 @@ void gras_procdata_init() XBT_DEBUG("Go ahead for cursor %d, there is %ld libdata", cursor, xbt_set_length(pd->libdata)); - xbt_assert1(fab.name, "Name of fabric #%d is NULL!", cursor); + xbt_assert(fab.name, "Name of fabric #%d is NULL!", cursor); XBT_DEBUG("Create the procdata for %s", fab.name); /* Check for our own errors */ - TRY { - xbt_set_get_by_name(pd->libdata, fab.name); - found = 1; - } - CATCH(e) { - xbt_ex_free(e); - found = 0; - } - if (found) + + if (xbt_set_get_by_name_or_null(pd->libdata, fab.name) != NULL) THROWF(unknown_error, 0, "MayDay: two modules use '%s' as libdata name", fab.name); /* Add the data in place, after some more sanity checking */ - elem = (*(fab.constructor)) (); + elem = fab.constructor(); if (elem->name_len && elem->name_len != strlen(elem->name)) { elem->name_len = strlen(elem->name); XBT_WARN @@ -189,8 +179,7 @@ void gras_procdata_exit() const char *gras_os_hostport() { static char *res = NULL; - if (res) - free(res); /* my port may have changed */ + free(res); /* my port may have changed */ res = bprintf("%s:%d", gras_os_myname(), gras_os_myport()); return (const char *) res; }