Skip to content

Commit 6ab0b8f

Browse files
committed
remove duplicate instances of origRequire
1 parent f736448 commit 6ab0b8f

File tree

2 files changed

+9
-7
lines changed

2 files changed

+9
-7
lines changed

packages/dd-trace/src/ritm.js

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,6 @@ const Module = require('module')
55
const parse = require('module-details-from-path')
66
const dc = require('dc-polyfill')
77

8-
const origRequire = Module.prototype.require
9-
108
// derived from require-in-the-middle@3 with tweaks
119

1210
module.exports = Hook
@@ -35,7 +33,9 @@ function Hook (modules, options, onrequire) {
3533
this.modules = modules
3634
this.options = options
3735
this.onrequire = onrequire
38-
const _origRequire = Module.prototype.require
36+
this.origRequire = Module.prototype.require
37+
38+
const self = this
3939

4040
if (Array.isArray(modules)) {
4141
for (const mod of modules) {
@@ -61,7 +61,7 @@ function Hook (modules, options, onrequire) {
6161
try {
6262
filename = Module._resolveFilename(request, this)
6363
} catch (resolveErr) {
64-
return _origRequire.apply(this, arguments)
64+
return self.origRequire.apply(this, arguments)
6565
}
6666

6767
const core = filename.indexOf(path.sep) === -1
@@ -81,7 +81,7 @@ function Hook (modules, options, onrequire) {
8181
const patched = patching[filename]
8282
if (patched) {
8383
// If it's already patched, just return it as-is.
84-
return origRequire.apply(this, arguments)
84+
return self.origRequire.apply(this, arguments)
8585
} else {
8686
patching[filename] = true
8787
}
@@ -94,7 +94,7 @@ function Hook (modules, options, onrequire) {
9494
if (moduleLoadStartChannel.hasSubscribers) {
9595
moduleLoadStartChannel.publish(payload)
9696
}
97-
const exports = origRequire.apply(this, arguments)
97+
const exports = self.origRequire.apply(this, arguments)
9898
payload.module = exports
9999
if (moduleLoadEndChannel.hasSubscribers) {
100100
moduleLoadEndChannel.publish(payload)
@@ -159,7 +159,7 @@ function Hook (modules, options, onrequire) {
159159
}
160160

161161
Hook.reset = function () {
162-
Module.prototype.require = origRequire
162+
Module.prototype.require = this.origRequire
163163
patchedRequire = null
164164
patching = Object.create(null)
165165
cache = Object.create(null)

packages/dd-trace/test/ritm.spec.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ const Hook = require('../src/ritm')
1010
describe('Ritm', () => {
1111
let moduleLoadStartChannel, moduleLoadEndChannel, startListener, endListener
1212
let utilHook, aHook, bHook, httpHook
13+
const origRequire = Module.prototype.require
1314

1415
before(() => {
1516
moduleLoadStartChannel = dc.channel('dd-trace:moduleLoadStart')
@@ -50,6 +51,7 @@ describe('Ritm', () => {
5051
aHook.unhook()
5152
bHook.unhook()
5253
httpHook.unhook()
54+
Module.prototype.require = origRequire
5355
})
5456

5557
it('should shim util', () => {

0 commit comments

Comments
 (0)