diff options
-rw-r--r-- | rts/Hpc.c | 2 | ||||
-rw-r--r-- | rts/ProfHeap.c | 2 | ||||
-rw-r--r-- | rts/Profiling.c | 2 | ||||
-rw-r--r-- | rts/RtsFlags.c | 4 | ||||
-rw-r--r-- | rts/eventlog/EventLogWriter.c | 2 |
5 files changed, 6 insertions, 6 deletions
@@ -388,7 +388,7 @@ exitHpc(void) { // not clober the .tix file. if (hpc_pid == getpid()) { - FILE *f = __rts_fopen(tixFilename,"w"); + FILE *f = __rts_fopen(tixFilename,"w+"); writeTix(f); } diff --git a/rts/ProfHeap.c b/rts/ProfHeap.c index 1023f7ccbe..cc99e37fdc 100644 --- a/rts/ProfHeap.c +++ b/rts/ProfHeap.c @@ -385,7 +385,7 @@ initHeapProfiling(void) sprintf(hp_filename, "%s.hp", prog); /* open the log file */ - if ((hp_file = __rts_fopen(hp_filename, "w")) == NULL) { + if ((hp_file = __rts_fopen(hp_filename, "w+")) == NULL) { debugBelch("Can't open profiling report file %s\n", hp_filename); RtsFlags.ProfFlags.doHeapProfile = 0; diff --git a/rts/Profiling.c b/rts/Profiling.c index f340a63cff..b91129ed98 100644 --- a/rts/Profiling.c +++ b/rts/Profiling.c @@ -263,7 +263,7 @@ initProfilingLogFile(void) sprintf(prof_filename, "%s.prof", stem); /* open the log file */ - if ((prof_file = __rts_fopen(prof_filename, "w")) == NULL) { + if ((prof_file = __rts_fopen(prof_filename, "w+")) == NULL) { debugBelch("Can't open profiling report file %s\n", prof_filename); RtsFlags.CcFlags.doCostCentres = 0; // Retainer profiling (`-hr` or `-hr<cc> -h<x>`) writes to diff --git a/rts/RtsFlags.c b/rts/RtsFlags.c index 8d9b052bc7..5cdf08e9a5 100644 --- a/rts/RtsFlags.c +++ b/rts/RtsFlags.c @@ -1745,7 +1745,7 @@ openStatsFile (char *filename, // filename, or NULL f = NULL; /* NULL means use debugBelch */ } else { if (*filename != '\0') { /* stats file specified */ - f = __rts_fopen (filename,"w"); + f = __rts_fopen (filename,"w+"); } else { if (filename_fmt == NULL) { errorBelch("Invalid stats filename format (NULL)\n"); @@ -1755,7 +1755,7 @@ openStatsFile (char *filename, // filename, or NULL char stats_filename[STATS_FILENAME_MAXLEN]; snprintf(stats_filename, STATS_FILENAME_MAXLEN, filename_fmt, prog_name); - f = __rts_fopen (stats_filename,"w"); + f = __rts_fopen (stats_filename,"w+"); } if (f == NULL) { errorBelch("Can't open stats file %s\n", filename); diff --git a/rts/eventlog/EventLogWriter.c b/rts/eventlog/EventLogWriter.c index 9f6f487d8e..4b486926a7 100644 --- a/rts/eventlog/EventLogWriter.c +++ b/rts/eventlog/EventLogWriter.c @@ -82,7 +82,7 @@ initEventLogFileWriter(void) char *event_log_filename = outputFileName(); /* Open event log file for writing. */ - if ((event_log_file = __rts_fopen(event_log_filename, "wb")) == NULL) { + if ((event_log_file = __rts_fopen(event_log_filename, "wb+")) == NULL) { sysErrorBelch( "initEventLogFileWriter: can't open %s", event_log_filename); stg_exit(EXIT_FAILURE); |