Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Make sure we don't went out of the string to handle *before* using it (thx valgrind)
[simgrid.git] / src / xbt / error.c
index de142cf..9e527bc 100644 (file)
@@ -8,11 +8,11 @@
 /* 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 "xbt/error.h"
+#include "xbt/sysdep.h"
 
 /**
  * \brief Usefull to do nice error repporting messages.
- * \ingroup XBT_error
+ *
  * \param errcode 
  * \return the printable name of an error code
  *
@@ -22,12 +22,12 @@ const char *xbt_error_name(xbt_error_t errcode)  {
    switch (errcode) {
       
     case no_error: return "success";
-    case mismatch_error: return "mismatch";
-    case system_error: return "system";
-    case network_error: return "network";
-    case timeout_error: return "timeout";
-    case thread_error: return "thread";
-    case unknown_error: return "unclassified";
+    case old_mismatch_error: return "mismatch";
+    case old_system_error: return "system";
+    case old_network_error: return "network";
+    case old_timeout_error: return "timeout";
+    case old_thread_error: return "thread";
+    case old_unknown_error: return "unclassified";
     default:
       return "SEVERE ERROR in error repporting module";
    }
@@ -37,13 +37,21 @@ XBT_LOG_EXTERNAL_CATEGORY(xbt);
 XBT_LOG_DEFAULT_CATEGORY(xbt);
   
 /**
- * \ingroup XBT_error
+ * @brief Kill the program with an error message 
  * \param msg 
  *
  * Things are so messed up that the only thing to do now, is to stop the program.
+ *
+ * The message is handled by a CRITICAL logging request
+ *
+ * If you want to pass arguments to the format, you can always write xbt_assert1(0,"fmt",args)
  */
 void xbt_die (const char *msg) {
    CRITICAL1("%s",msg);
    xbt_abort();
 }
 
+/** @brief Kill the program in silence */
+void xbt_abort(void) {
+   abort();
+}