@@ -32,7 +32,7 @@ module.exports = function resolve(x, options, callback) {
32
32
33
33
opts . paths = opts . paths || [ ] ;
34
34
35
- if ( / ^ (?: \. \. ? (?: \/ | $ ) | \/ | ( [ A - Z a - z ] : ) ? [ \\ \/ ] ) / . test ( x ) ) {
35
+ if ( / ^ (?: \. \. ? (?: \/ | $ ) | \/ | ( [ A - Z a - z ] : ) ? [ / \\ ] ) / . test ( x ) ) {
36
36
var res = path . resolve ( y , x ) ;
37
37
if ( x === '..' ) res += '/' ;
38
38
if ( / \/ $ / . test ( x ) && res === y ) {
@@ -63,20 +63,22 @@ module.exports = function resolve(x, options, callback) {
63
63
} ) ;
64
64
}
65
65
66
- function loadAsFile ( x , pkg , callback ) {
66
+ function loadAsFile ( x , thePackage , callback ) {
67
+ var loadAsFilePackage = thePackage ;
67
68
var cb = callback ;
68
- if ( typeof pkg === 'function' ) {
69
- cb = pkg ;
70
- pkg = undefined ;
69
+ if ( typeof loadAsFilePackage === 'function' ) {
70
+ cb = loadAsFilePackage ;
71
+ loadAsFilePackage = undefined ;
71
72
}
72
73
73
74
var exts = [ '' ] . concat ( extensions ) ;
74
- load ( exts , x , pkg ) ;
75
+ load ( exts , x , loadAsFilePackage ) ;
75
76
76
- function load ( exts , x , pkg ) {
77
- if ( exts . length === 0 ) return cb ( null , undefined , pkg ) ;
77
+ function load ( exts , x , loadPackage ) {
78
+ if ( exts . length === 0 ) return cb ( null , undefined , loadPackage ) ;
78
79
var file = x + exts [ 0 ] ;
79
80
81
+ var pkg = loadPackage ;
80
82
if ( pkg ) onpkg ( null , pkg ) ;
81
83
else loadpkg ( path . dirname ( file ) , onpkg ) ;
82
84
@@ -96,19 +98,19 @@ module.exports = function resolve(x, options, callback) {
96
98
isFile ( file , onex ) ;
97
99
}
98
100
function onex ( err , ex ) {
99
- if ( err ) cb ( err ) ;
100
- else if ( ! ex ) load ( exts . slice ( 1 ) , x , pkg ) ;
101
- else cb ( null , file , pkg ) ;
101
+ if ( err ) return cb ( err ) ;
102
+ if ( ex ) return cb ( null , file , pkg ) ;
103
+ load ( exts . slice ( 1 ) , x , pkg ) ;
102
104
}
103
105
}
104
106
}
105
107
106
108
function loadpkg ( dir , cb ) {
107
109
if ( dir === '' || dir === '/' ) return cb ( null ) ;
108
- if ( process . platform === 'win32' && ( / ^ \w : [ \\ \/ ] * $ / ) . test ( dir ) ) {
110
+ if ( process . platform === 'win32' && ( / ^ \w : [ / \\ ] * $ / ) . test ( dir ) ) {
109
111
return cb ( null ) ;
110
112
}
111
- if ( / [ \\ \/ ] n o d e _ m o d u l e s [ \\ \/ ] * $ / . test ( dir ) ) return cb ( null ) ;
113
+ if ( / [ / \\ ] n o d e _ m o d u l e s [ / \\ ] * $ / . test ( dir ) ) return cb ( null ) ;
112
114
113
115
var pkgfile = path . join ( dir , 'package.json' ) ;
114
116
isFile ( pkgfile , function ( err , ex ) {
@@ -127,8 +129,9 @@ module.exports = function resolve(x, options, callback) {
127
129
} ) ;
128
130
}
129
131
130
- function loadAsDirectory ( x , fpkg , callback ) {
132
+ function loadAsDirectory ( x , loadAsDirectoryPackage , callback ) {
131
133
var cb = callback ;
134
+ var fpkg = loadAsDirectoryPackage ;
132
135
if ( typeof fpkg === 'function' ) {
133
136
cb = fpkg ;
134
137
fpkg = opts . package ;
0 commit comments