Skip to content

Commit 0f4319a

Browse files
sam-githubitaloacasas
authored andcommitted
src: use std::string for trace enabled_categories
A std::string manages its own memory, so using one removes the implicit assumption that the argv vector passed to node will never be deallocated. Also, the enabled_categories are used to construct a std::stringstream, so its simpler to use the standard library consistently. PR-URL: #12242 Reviewed-By: Richard Lau <[email protected]> Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Anna Henningsen <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Daniel Bevenius <[email protected]>
1 parent 6826637 commit 0f4319a

File tree

3 files changed

+5
-4
lines changed

3 files changed

+5
-4
lines changed

src/node.cc

+1-1
Original file line numberDiff line numberDiff line change
@@ -153,7 +153,7 @@ static node_module* modlist_builtin;
153153
static node_module* modlist_linked;
154154
static node_module* modlist_addon;
155155
static bool trace_enabled = false;
156-
static const char* trace_enabled_categories = nullptr;
156+
static std::string trace_enabled_categories; // NOLINT(runtime/string)
157157

158158
#if defined(NODE_HAVE_I18N_SUPPORT)
159159
// Path to ICU data (for i18n / Intl)

src/tracing/agent.cc

+3-2
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,11 @@ namespace node {
1010
namespace tracing {
1111

1212
using v8::platform::tracing::TraceConfig;
13+
using std::string;
1314

1415
Agent::Agent() {}
1516

16-
void Agent::Start(v8::Platform* platform, const char* enabled_categories) {
17+
void Agent::Start(v8::Platform* platform, const string& enabled_categories) {
1718
platform_ = platform;
1819

1920
int err = uv_loop_init(&tracing_loop_);
@@ -26,7 +27,7 @@ void Agent::Start(v8::Platform* platform, const char* enabled_categories) {
2627
tracing_controller_ = new TracingController();
2728

2829
TraceConfig* trace_config = new TraceConfig();
29-
if (enabled_categories) {
30+
if (!enabled_categories.empty()) {
3031
std::stringstream category_list(enabled_categories);
3132
while (category_list.good()) {
3233
std::string category;

src/tracing/agent.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ namespace tracing {
1212
class Agent {
1313
public:
1414
explicit Agent();
15-
void Start(v8::Platform* platform, const char* enabled_categories);
15+
void Start(v8::Platform* platform, const std::string& enabled_categories);
1616
void Stop();
1717

1818
private:

0 commit comments

Comments
 (0)