mirror of https://github.com/lukechilds/node.git
Browse Source
`module.children` is supposed to be the list of modules included by this module but lib/module.js failed to update the list when the included module was retrieved from `Module._cache`. Fixes: https://github.com/nodejs/node/issues/7131 PR-URL: https://github.com/nodejs/node/pull/14132 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: Tobias Nießen <tniessen@tnie.de>v6
Ben Noordhuis
8 years ago
5 changed files with 31 additions and 4 deletions
@ -0,0 +1,5 @@ |
|||||
|
'use strict'; |
||||
|
require('sys'); // Builtin should not show up in module.children array.
|
||||
|
require('./b'); // This should.
|
||||
|
require('./b'); // This should not.
|
||||
|
module.exports = module.children.slice(); |
@ -0,0 +1,2 @@ |
|||||
|
'use strict'; |
||||
|
module.exports = module.children.slice(); |
@ -0,0 +1,13 @@ |
|||||
|
// Flags: --no-deprecation
|
||||
|
'use strict'; |
||||
|
const common = require('../common'); |
||||
|
const assert = require('assert'); |
||||
|
const path = require('path'); |
||||
|
|
||||
|
const dir = path.join(common.fixturesDir, 'GH-7131'); |
||||
|
const b = require(path.join(dir, 'b')); |
||||
|
const a = require(path.join(dir, 'a')); |
||||
|
|
||||
|
assert.strictEqual(a.length, 1); |
||||
|
assert.strictEqual(b.length, 0); |
||||
|
assert.deepStrictEqual(a[0].exports, b); |
Loading…
Reference in new issue