From: mquinson Date: Mon, 21 Jun 2004 17:10:56 +0000 (+0000) Subject: plug a stupid leak X-Git-Tag: v3.3~5220 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/0154333fd446f6e40144fcd5b302616b8c1f73c0?ds=sidebyside plug a stupid leak git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@126 48e7efb5-ca39-0410-a469-dd3cf9ba447f --- diff --git a/src/gras/Transport/transport.c b/src/gras/Transport/transport.c index f799f4cd0c..96b7104115 100644 --- a/src/gras/Transport/transport.c +++ b/src/gras/Transport/transport.c @@ -44,7 +44,7 @@ gras_trp_plugin_new(const char *name, gras_trp_setup_t setup) { RAISE_MALLOC; errcode = setup(plug); - switch (setup(plug)) { + switch (errcode) { case mismatch_error: /* SG plugin return mismatch when in RL mode (and vice versa) */ free(plug); @@ -94,10 +94,12 @@ void gras_trp_plugin_free(void *p) { gras_trp_plugin_t *plug = p; if (plug) { - if (plug->exit) + if (plug->exit) { plug->exit(plug); - else if (plug->data) + } else if (plug->data) { + DEBUG1("Plugin %s lacks exit(). Free data anyway.",plug->name); free(plug->data); + } free(plug->name); free(plug);