Skip to content

Commit 4d1d185

Browse files
committed
Change absolute path returned by getPathToModule() to relative path to fix issue webpack#2215
1 parent ba93f84 commit 4d1d185

1 file changed

Lines changed: 13 additions & 6 deletions

File tree

lib/node/NodeSourcePlugin.js

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
MIT License http://www.opensource.org/licenses/mit-license.php
33
Author Tobias Koppers @sokra
44
*/
5+
var path = require('path');
56
var AliasPlugin = require("enhanced-resolve/lib/AliasPlugin");
67
var objectAssign = require('object-assign');
78
var ModuleParserHelpers = require("../ModuleParserHelpers");
@@ -37,33 +38,39 @@ NodeSourcePlugin.prototype.apply = function(compiler) {
3738
if(localOptions.process) {
3839
var processType = localOptions.process;
3940
parser.plugin("expression process", function() {
40-
return ModuleParserHelpers.addParsedVariable(this, "process", "require(" + JSON.stringify(getPathToModule("process", processType)) + ")");
41+
return ModuleParserHelpers.addParsedVariable(this, "process", "require(" +
42+
JSON.stringify(path.relative(this.state.module.context, getPathToModule("process", processType))) + ")");
4143
});
4244
}
4345
if(localOptions.global) {
4446
parser.plugin("expression global", function() {
45-
return ModuleParserHelpers.addParsedVariable(this, "global", "require(" + JSON.stringify(require.resolve("../../buildin/global.js")) + ")");
47+
return ModuleParserHelpers.addParsedVariable(this, "global", "require(" +
48+
JSON.stringify(path.relative(this.state.module.context, require.resolve("../../buildin/global.js"))) + ")");
4649
});
4750
}
4851
if(localOptions.console) {
4952
var consoleType = localOptions.console;
5053
parser.plugin("expression console", function() {
51-
return ModuleParserHelpers.addParsedVariable(this, "console", "require(" + JSON.stringify(getPathToModule("console", consoleType)) + ")");
54+
return ModuleParserHelpers.addParsedVariable(this, "console", "require(" +
55+
JSON.stringify(path.relative(this.state.module.context, getPathToModule("console", consoleType))) + ")");
5256
});
5357
}
5458
var bufferType = localOptions.Buffer;
5559
if(bufferType) {
5660
parser.plugin("expression Buffer", function() {
57-
return ModuleParserHelpers.addParsedVariable(this, "Buffer", "require(" + JSON.stringify(getPathToModule("buffer", bufferType)) + ").Buffer");
61+
return ModuleParserHelpers.addParsedVariable(this, "Buffer", "require(" +
62+
JSON.stringify(path.relative(this.state.module.context, getPathToModule("buffer", bufferType))) + ").Buffer");
5863
});
5964
}
6065
if(localOptions.setImmediate) {
6166
var setImmediateType = localOptions.setImmediate;
6267
parser.plugin("expression setImmediate", function() {
63-
return ModuleParserHelpers.addParsedVariable(this, "setImmediate", "require(" + JSON.stringify(getPathToModule("timers", setImmediateType)) + ").setImmediate");
68+
return ModuleParserHelpers.addParsedVariable(this, "setImmediate", "require(" +
69+
JSON.stringify(path.relative(this.state.module.context, getPathToModule("timers", setImmediateType))) + ").setImmediate");
6470
});
6571
parser.plugin("expression clearImmediate", function() {
66-
return ModuleParserHelpers.addParsedVariable(this, "clearImmediate", "require(" + JSON.stringify(getPathToModule("timers", setImmediateType)) + ").clearImmediate");
72+
return ModuleParserHelpers.addParsedVariable(this, "clearImmediate", "require(" +
73+
JSON.stringify(path.relative(this.state.module.context, getPathToModule("timers", setImmediateType))) + ").clearImmediate");
6774
});
6875
}
6976
});

0 commit comments

Comments
 (0)