Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
[mc] Move code in simgrid::mc
[simgrid.git] / src / xbt / xbt_log_appender_file.c
index 5342776..27da686 100644 (file)
@@ -6,11 +6,9 @@
 /* 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 "src/internal_config.h"
 #include "xbt/sysdep.h"
-#include "xbt/log_private.h"
-#ifdef HAVE_SMPI
-#include "smpi/private.h" // to access bench_begin/end. Not ultraclean, I confess
-#endif
+#include "src/xbt/log_private.h"
 #include <stdio.h>
 
 static void append_file(xbt_log_appender_t this_, char *str) {
@@ -26,13 +24,6 @@ static void free_(xbt_log_appender_t this_) {
     fclose(this_->data);
 }
 
-#ifdef HAVE_SMPI
-void __smpi_bench_dont (void); // Stupid prototype
-void __smpi_bench_dont (void) { /* I'm only a place-holder in case we link without SMPI */; }
-void smpi_bench_begin(void) __attribute__ ((weak, alias ("__smpi_bench_dont")));
-void smpi_bench_end(void)   __attribute__ ((weak, alias ("__smpi_bench_dont")));
-#endif
-
 XBT_LOG_EXTERNAL_CATEGORY(smpi); // To detect if SMPI is inited
 
 xbt_log_appender_t xbt_log_appender_file_new(char *arg) {
@@ -138,7 +129,10 @@ xbt_log_appender_t xbt_log_appender2_file_new(char *arg,int roll) {
   xbt_assert(sep>0);
   data->filename=xbt_strdup(sep+1);
   *sep='\0';
-  data->limit=atol(buf);
+  char *endptr;
+  data->limit=strtol(buf,&endptr,10);
+  xbt_assert(endptr[0]=='\0', "Invalid buffer size: %s", buf);
+  xbt_free(buf);
   if(roll)
     data->count=-1;
   else