diff options
Diffstat (limited to 'src/shell.js')
-rw-r--r-- | src/shell.js | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/shell.js b/src/shell.js index 5b6419c0..55f96194 100644 --- a/src/shell.js +++ b/src/shell.js @@ -24,11 +24,14 @@ if (ENVIRONMENT_IS_NODE) { }; var nodeFS = require('fs'); + var nodePath = require('path'); Module['read'] = function(filename) { + filename = nodePath['normalize'](filename); var ret = nodeFS['readFileSync'](filename).toString(); - if (!ret && filename[0] != '/') { - filename = __dirname.split('/').slice(0, -1).join('/') + '/src/' + filename; + // The path is absolute if the normalized version is the same as the resolved. + if (!ret && filename != nodePath['resolve'](filename)) { + filename = path.join(__dirname, '..', 'src', filename); ret = nodeFS['readFileSync'](filename).toString(); } return ret; |