- //Open a file for each new container
- char *filename = NULL;
-
-
- //if we are in the mode with only one file
- static FILE* temp = NULL;
-
- if (!xbt_cfg_get_boolean(_sg_cfg_set, "tracing/smpi/format/ti_one_file") || temp ==NULL){
- filename = bprintf("%s/%f_%s.txt", folder_name, prefix, ((createContainer_t) event->data)->container->name);
- temp=fopen(filename, "w");
- if(temp==NULL){
- xbt_die("Tracefile %s could not be opened for writing.",
- filename);
- }
+ if (!xbt_cfg_get_boolean(_sg_cfg_set, "tracing/smpi/format/ti_one_file")
+ || temp == NULL) {
+ char *folder_name = bprintf("%s_files", TRACE_get_filename());
+ char *filename = bprintf("%s/%f_%s.txt", folder_name, prefix,
+ ((createContainer_t) event->data)->container->name);
+#ifdef WIN32
+ mkdir(folder_name);
+#else
+ mkdir(folder_name, S_IRWXU | S_IRWXG | S_IRWXO);
+#endif
+ temp = fopen(filename, "w");
+ if (temp == NULL)
+ xbt_die("Tracefile %s could not be opened for writing: %s",
+ filename, strerror(errno));