diff --git a/lib/perf_hooks.js b/lib/perf_hooks.js index 18b0332feaffaa..dbaf2a39fe6d19 100644 --- a/lib/perf_hooks.js +++ b/lib/perf_hooks.js @@ -455,11 +455,14 @@ function getObserversList(type) { return list; } -function doNotify() { - this[kQueued] = false; - this.runInAsyncScope(this[kCallback], this, this[kBuffer], this); - this[kBuffer][kEntries] = []; - L.init(this[kBuffer][kEntries]); +function doNotify(observer) { + observer[kQueued] = false; + observer.runInAsyncScope(observer[kCallback], + observer, + observer[kBuffer], + observer); + observer[kBuffer][kEntries] = []; + L.init(observer[kBuffer][kEntries]); } // Set up the callback used to receive PerformanceObserver notifications @@ -485,11 +488,11 @@ function observersCallback(entry) { observer[kQueued] = true; // Use setImmediate instead of nextTick to give more time // for multiple entries to collect. - setImmediate(doNotify.bind(observer)); + setImmediate(doNotify, observer); } } else { // If not buffering, notify immediately - doNotify.call(observer); + doNotify(observer); } current = current._idlePrev; }