summaryrefslogtreecommitdiff
path: root/src/util.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/util.cc')
-rw-r--r--src/util.cc9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/util.cc b/src/util.cc
index 49c8a0f46a..4091fffb6b 100644
--- a/src/util.cc
+++ b/src/util.cc
@@ -41,10 +41,13 @@
#include <sys/types.h>
#endif
+#include <atomic>
#include <cstdio>
#include <iomanip>
#include <sstream>
+static std::atomic_int seq = {0}; // Sequence number for diagnostic filenames.
+
namespace node {
// Microseconds in a second, as a float.
@@ -225,8 +228,7 @@ void DiagnosticFilename::LocalTime(TIME_TYPE* tm_struct) {
std::string DiagnosticFilename::MakeFilename(
uint64_t thread_id,
const char* prefix,
- const char* ext,
- int seq) {
+ const char* ext) {
std::ostringstream oss;
TIME_TYPE tm_struct;
LocalTime(&tm_struct);
@@ -262,8 +264,7 @@ std::string DiagnosticFilename::MakeFilename(
#endif
oss << "." << uv_os_getpid();
oss << "." << thread_id;
- if (seq >= 0)
- oss << "." << std::setfill('0') << std::setw(3) << ++seq;
+ oss << "." << std::setfill('0') << std::setw(3) << ++seq;
oss << "." << ext;
return oss.str();
}