Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
[SMPI] Fix segfaults introduced by 772f8dd3b48f0c9dff20f67a4c2ea1cbbe673f8d
[simgrid.git] / src / instr / instr_trace.cpp
index 149f937..cfa70ee 100644 (file)
@@ -342,10 +342,11 @@ void new_pajeSetState (double timestamp, container_t container, type_t type, val
   ((setState_t)(event->data))->container = container;
   ((setState_t)(event->data))->value = value;
 
   ((setState_t)(event->data))->container = container;
   ((setState_t)(event->data))->value = value;
 
-  smpi_trace_call_location_t* loc = smpi_trace_get_call_location();
-  ((setState_t)(event->data))->filename   = loc->filename;
-  ((setState_t)(event->data))->linenumber = loc->linenumber;
+  if (xbt_cfg_get_boolean("smpi/trace-call-location")) {
+    smpi_trace_call_location_t* loc = smpi_trace_get_call_location();
+    ((setState_t)(event->data))->filename   = loc->filename;
+    ((setState_t)(event->data))->linenumber = loc->linenumber;
+  }
 
   XBT_DEBUG("%s: event_type=%d, timestamp=%f", __FUNCTION__, (int)event->event_type, event->timestamp);
 
 
   XBT_DEBUG("%s: event_type=%d, timestamp=%f", __FUNCTION__, (int)event->event_type, event->timestamp);
 
@@ -366,9 +367,11 @@ void new_pajePushStateWithExtra (double timestamp, container_t container, type_t
   ((pushState_t)(event->data))->value = value;
   ((pushState_t)(event->data))->extra = extra;
 
   ((pushState_t)(event->data))->value = value;
   ((pushState_t)(event->data))->extra = extra;
 
-  smpi_trace_call_location_t* loc = smpi_trace_get_call_location();
-  ((pushState_t)(event->data))->filename   = loc->filename;
-  ((pushState_t)(event->data))->linenumber = loc->linenumber;
+  if (xbt_cfg_get_boolean("smpi/trace-call-location")) {
+    smpi_trace_call_location_t* loc = smpi_trace_get_call_location();
+    ((pushState_t)(event->data))->filename   = loc->filename;
+    ((pushState_t)(event->data))->linenumber = loc->linenumber;
+  }
 
   XBT_DEBUG("%s: event_type=%d, timestamp=%f", __FUNCTION__, (int)event->event_type, event->timestamp);
 
 
   XBT_DEBUG("%s: event_type=%d, timestamp=%f", __FUNCTION__, (int)event->event_type, event->timestamp);