X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/3b9ebb3e5e5d04d3c6df84a1d1b2e8b34a7cbd23..cdc5e6b304490c7f11223bea097fea9fd2a2dfee:/src/xbt/xbt_log_layout_format.c diff --git a/src/xbt/xbt_log_layout_format.c b/src/xbt/xbt_log_layout_format.c index 444d45513c..651a2ffef6 100644 --- a/src/xbt/xbt_log_layout_format.c +++ b/src/xbt/xbt_log_layout_format.c @@ -7,11 +7,12 @@ * under the terms of the license (GNU LGPL) which comes with this package. */ #include "portable.h" /* execinfo when available */ +#include "xbt/ex_interface.h" #include "xbt/sysdep.h" #include "xbt/strbuff.h" #include "xbt/log_private.h" -#include "gras/virtu.h" /* gras_os_myname (KILLME) */ -#include "xbt/synchro.h" /* xbt_thread_self_name */ +#include "simgrid/simix.h" /* SIMIX_host_self_get_name */ +#include "surf/surf.h" #include extern const char *xbt_log_priority_names[8]; @@ -63,7 +64,11 @@ static double format_begin_of_time = -1; check_overflow(len); \ } else (void)0 -#define show_string(data) show_it(data, "s") +#define show_string(data) \ + if (1) { \ + const char *show_string_data = (data); \ + show_it(show_string_data ? show_string_data : "(null)", "s"); \ + } else (void)0 #define show_int(data) show_it(data, "d") #define show_double(data) show_it(data, "f") @@ -83,7 +88,8 @@ static int xbt_log_layout_format_doit(xbt_log_layout_t l, handle_modifier: switch (*q) { case '\0': - xbt_die("Layout format (%s) ending with %%\n", (char *)l->data); + fprintf(stderr, "Layout format (%s) ending with %%\n", (char *)l->data); + xbt_abort(); case '%': *p = '%'; check_overflow(1); @@ -120,7 +126,7 @@ static int xbt_log_layout_format_doit(xbt_log_layout_t l, show_string(xbt_log_priority_names[ev->priority]); break; case 'h': /* host name; SimGrid extension */ - show_string(gras_os_myname()); + show_string(SIMIX_host_self_get_name()); break; case 't': /* thread name; LOG4J compliant */ show_string(xbt_thread_self_name()); @@ -157,15 +163,16 @@ static int xbt_log_layout_format_doit(xbt_log_layout_t l, e.bt_strings = NULL; e.msg = NULL; e.remote = 0; - xbt_backtrace_current(&e); + xbt_ex_setup_backtrace(&e); if (*q == 'B') { - show_string(e.bt_strings[2] + 8); + show_string(e.bt_strings[1] + 8); } else { xbt_strbuff_t buff = xbt_strbuff_new(); int i; + xbt_strbuff_append(buff, e.bt_strings[1] + 8); for (i = 2; i < e.used; i++) { - xbt_strbuff_append(buff, e.bt_strings[i] + 8); xbt_strbuff_append(buff, "\n"); + xbt_strbuff_append(buff, e.bt_strings[i] + 8); } show_string(buff->data); xbt_strbuff_free(buff); @@ -177,10 +184,10 @@ static int xbt_log_layout_format_doit(xbt_log_layout_t l, #endif break; case 'd': /* date; LOG4J compliant */ - show_double(gras_os_time()); + show_double(surf_get_clock()); break; case 'r': /* application age; LOG4J compliant */ - show_double(gras_os_time() - format_begin_of_time); + show_double(surf_get_clock() - format_begin_of_time); break; case 'm': { /* user-provided message; LOG4J compliant */ int len, sz; @@ -190,7 +197,8 @@ static int xbt_log_layout_format_doit(xbt_log_layout_t l, break; } default: - xbt_die(ERRMSG, *q, (char *)l->data); + fprintf(stderr, ERRMSG, *q, (char *)l->data); + xbt_abort(); } } else { *p = *q; @@ -215,7 +223,7 @@ xbt_log_layout_t xbt_log_layout_format_new(char *arg) res->data = xbt_strdup((char *) arg); if (format_begin_of_time < 0) - format_begin_of_time = gras_os_time(); + format_begin_of_time = surf_get_clock(); return res; }