diff --git a/src/node_debug.cc b/src/node_debug.cc index 8dbc79004ff90a..c995e791f252b2 100644 --- a/src/node_debug.cc +++ b/src/node_debug.cc @@ -24,17 +24,16 @@ using v8::Number; using v8::Object; using v8::Value; -thread_local std::unordered_map generic_usage_counters; +thread_local std::unordered_map + generic_usage_counters; thread_local std::unordered_map v8_fast_api_call_counts; -void CountGenericUsage(const char* counter_name) { - if (generic_usage_counters.find(counter_name) == generic_usage_counters.end()) - generic_usage_counters[counter_name] = 0; +void CountGenericUsage(FastStringKey counter_name) { generic_usage_counters[counter_name]++; } -int GetGenericUsageCount(const char* counter_name) { +int GetGenericUsageCount(FastStringKey counter_name) { return generic_usage_counters[counter_name]; } @@ -53,8 +52,8 @@ void GetGenericUsageCount(const FunctionCallbackInfo& args) { return; } Utf8Value utf8_key(env->isolate(), args[0]); - args.GetReturnValue().Set( - GetGenericUsageCount(utf8_key.ToStringView().data())); + args.GetReturnValue().Set(GetGenericUsageCount( + FastStringKey::AllowDynamic(utf8_key.ToStringView()))); } void GetV8FastApiCallCount(const FunctionCallbackInfo& args) { diff --git a/src/node_debug.h b/src/node_debug.h index 6d9e03a6723dd0..14dc033fe3caf3 100644 --- a/src/node_debug.h +++ b/src/node_debug.h @@ -13,8 +13,9 @@ namespace debug { void TrackV8FastApiCall(FastStringKey key); int GetV8FastApiCallCount(FastStringKey key); -void CountGenericUsage(const char* counter_name); -#define COUNT_GENERIC_USAGE(name) node::debug::CountGenericUsage(name) +void CountGenericUsage(FastStringKey counter_name); +#define COUNT_GENERIC_USAGE(name) \ + node::debug::CountGenericUsage(FastStringKey(name)) #define TRACK_V8_FAST_API_CALL(key) \ node::debug::TrackV8FastApiCall(FastStringKey(key))