Browse Source

module: only cache package main

v0.10.24-release
Wyatt Preul 11 years ago
committed by isaacs
parent
commit
1d5e797445
  1. 12
      lib/module.js

12
lib/module.js

@ -94,11 +94,11 @@ function statPath(path) {
}
// check if the directory is a package.json dir
var packageCache = {};
var packageMainCache = {};
function readPackage(requestPath) {
if (hasOwnProperty(packageCache, requestPath)) {
return packageCache[requestPath];
if (hasOwnProperty(packageMainCache, requestPath)) {
return packageMainCache[requestPath];
}
var fs = NativeModule.require('fs');
@ -110,7 +110,7 @@ function readPackage(requestPath) {
}
try {
var pkg = packageCache[requestPath] = JSON.parse(json);
var pkg = packageMainCache[requestPath] = JSON.parse(json).main;
} catch (e) {
e.path = jsonPath;
e.message = 'Error parsing ' + jsonPath + ': ' + e.message;
@ -122,9 +122,9 @@ function readPackage(requestPath) {
function tryPackage(requestPath, exts) {
var pkg = readPackage(requestPath);
if (!pkg || !pkg.main) return false;
if (!pkg) return false;
var filename = path.resolve(requestPath, pkg.main);
var filename = path.resolve(requestPath, pkg);
return tryFile(filename) || tryExtensions(filename, exts) ||
tryExtensions(path.resolve(filename, 'index'), exts);
}

Loading…
Cancel
Save