summaryrefslogtreecommitdiff
path: root/src/tracing/node_trace_writer.cc
diff options
context:
space:
mode:
authorAnna Henningsen <anna@addaleax.net>2018-07-18 02:15:17 +0200
committerAnna Henningsen <anna@addaleax.net>2018-08-01 17:16:56 +0200
commit25fdab5402c20fb0c08fc917d022a21e031ac5ff (patch)
tree309f66211b2cc5bd6d6f369393f124c4d244a109 /src/tracing/node_trace_writer.cc
parent5c212a61d10fd96cc3cc00c632f6bf5cd44ffc9d (diff)
downloadandroid-node-v8-25fdab5402c20fb0c08fc917d022a21e031ac5ff.tar.gz
android-node-v8-25fdab5402c20fb0c08fc917d022a21e031ac5ff.tar.bz2
android-node-v8-25fdab5402c20fb0c08fc917d022a21e031ac5ff.zip
src: use unique_ptr for internal JSON trace writer
PR-URL: https://github.com/nodejs/node/pull/21867 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Eugene Ostroukhov <eostroukhov@google.com> Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com>
Diffstat (limited to 'src/tracing/node_trace_writer.cc')
-rw-r--r--src/tracing/node_trace_writer.cc8
1 files changed, 3 insertions, 5 deletions
diff --git a/src/tracing/node_trace_writer.cc b/src/tracing/node_trace_writer.cc
index 2fb7c12a82..c188495422 100644
--- a/src/tracing/node_trace_writer.cc
+++ b/src/tracing/node_trace_writer.cc
@@ -37,9 +37,7 @@ void NodeTraceWriter::WriteSuffix() {
{
Mutex::ScopedLock scoped_lock(stream_mutex_);
if (total_traces_ > 0) {
- total_traces_ = 0; // so we don't write it again in FlushPrivate
- // Appends "]}" to stream_.
- delete json_trace_writer_;
+ total_traces_ = kTracesPerFile; // Act as if we reached the file limit.
should_flush = true;
}
}
@@ -111,7 +109,7 @@ void NodeTraceWriter::AppendTraceEvent(TraceObject* trace_event) {
// to a state where we can start writing trace events to it.
// Repeatedly constructing and destroying json_trace_writer_ allows
// us to use V8's JSON writer instead of implementing our own.
- json_trace_writer_ = TraceWriter::CreateJSONTraceWriter(stream_);
+ json_trace_writer_.reset(TraceWriter::CreateJSONTraceWriter(stream_));
}
++total_traces_;
json_trace_writer_->AppendTraceEvent(trace_event);
@@ -126,7 +124,7 @@ void NodeTraceWriter::FlushPrivate() {
total_traces_ = 0;
// Destroying the member JSONTraceWriter object appends "]}" to
// stream_ - in other words, ending a JSON file.
- delete json_trace_writer_;
+ json_trace_writer_.reset();
}
// str() makes a copy of the contents of the stream.
str = stream_.str();