/* This program is free software; you can redistribute it and/or modify it
* under the terms of the license (GNU LGPL) which comes with this package. */
-//#include "private.hpp"
#include "smpi_keyvals.hpp"
+#include "xbt/sysdep.h"
namespace simgrid{
namespace smpi{
ret = elem.delete_fn.comm_delete_fn(obj, keyval, value, elem.extra_state);
else if (elem.delete_fn.comm_delete_fn_fort != MPI_NULL_DELETE_FN)
elem.delete_fn.comm_delete_fn_fort(obj, keyval, value, elem.extra_state, &ret);
+ if (elem.delete_attr)
+ xbt_free(value);
return ret;
}
ret = elem.delete_fn.win_delete_fn(obj, keyval, value, elem.extra_state);
else if (elem.delete_fn.win_delete_fn_fort != MPI_NULL_DELETE_FN)
elem.delete_fn.win_delete_fn_fort(obj, keyval, value, elem.extra_state, &ret);
+ if (elem.delete_attr)
+ xbt_free(value);
return ret;
}
ret = elem.delete_fn.type_delete_fn(obj, keyval, value, elem.extra_state);
else if (elem.delete_fn.type_delete_fn_fort != MPI_NULL_DELETE_FN)
elem.delete_fn.type_delete_fn_fort(obj, keyval, value, elem.extra_state, &ret);
+ if (elem.delete_attr)
+ xbt_free(value);
return ret;
}