File tree 3 files changed +30
-22
lines changed
3 files changed +30
-22
lines changed Original file line number Diff line number Diff line change @@ -46,28 +46,26 @@ mkdirP.sync = function sync (p, mode) {
46
46
47
47
if ( typeof mode === 'string' ) mode = parseInt ( mode , 8 ) ;
48
48
p = path . resolve ( p ) ;
49
-
49
+
50
50
try {
51
- fs . mkdirSync ( p , mode )
51
+ fs . mkdirSync ( p , mode ) ;
52
52
}
53
53
catch ( err0 ) {
54
54
switch ( err0 . code ) {
55
55
case 'ENOENT' :
56
- var err1 = sync ( path . dirname ( p ) , mode )
57
- if ( err1 ) throw err1 ;
58
- else return sync ( p , mode ) ;
56
+ sync ( path . dirname ( p ) , mode ) ;
57
+ sync ( p , mode ) ;
59
58
break ;
60
-
59
+
61
60
case 'EEXIST' :
62
61
var stat ;
63
62
try {
64
63
stat = fs . statSync ( p ) ;
65
64
}
66
65
catch ( err1 ) {
67
- throw err0
66
+ throw err0 ;
68
67
}
69
68
if ( ! stat . isDirectory ( ) ) throw err0 ;
70
- else return null ;
71
69
break ;
72
70
default :
73
71
throw err0
Original file line number Diff line number Diff line change @@ -8,12 +8,17 @@ test('sync', function (t) {
8
8
var x = Math . floor ( Math . random ( ) * Math . pow ( 16 , 4 ) ) . toString ( 16 ) ;
9
9
var y = Math . floor ( Math . random ( ) * Math . pow ( 16 , 4 ) ) . toString ( 16 ) ;
10
10
var z = Math . floor ( Math . random ( ) * Math . pow ( 16 , 4 ) ) . toString ( 16 ) ;
11
-
11
+
12
12
var file = '/tmp/' + [ x , y , z ] . join ( '/' ) ;
13
-
14
- var err = mkdirp . sync ( file , 0755 ) ;
15
- if ( err ) t . fail ( err ) ;
16
- else path . exists ( file , function ( ex ) {
13
+
14
+ try {
15
+ mkdirp . sync ( file , 0755 ) ;
16
+ } catch ( err ) {
17
+ t . fail ( err ) ;
18
+ return t . end ( ) ;
19
+ }
20
+
21
+ path . exists ( file , function ( ex ) {
17
22
if ( ! ex ) t . fail ( 'file not created' )
18
23
else fs . stat ( file , function ( err , stat ) {
19
24
if ( err ) t . fail ( err )
@@ -22,6 +27,6 @@ test('sync', function (t) {
22
27
t . ok ( stat . isDirectory ( ) , 'target not a directory' ) ;
23
28
t . end ( ) ;
24
29
}
25
- } )
26
- } )
30
+ } ) ;
31
+ } ) ;
27
32
} ) ;
Original file line number Diff line number Diff line change @@ -8,12 +8,17 @@ test('umask sync modes', function (t) {
8
8
var x = Math . floor ( Math . random ( ) * Math . pow ( 16 , 4 ) ) . toString ( 16 ) ;
9
9
var y = Math . floor ( Math . random ( ) * Math . pow ( 16 , 4 ) ) . toString ( 16 ) ;
10
10
var z = Math . floor ( Math . random ( ) * Math . pow ( 16 , 4 ) ) . toString ( 16 ) ;
11
-
11
+
12
12
var file = '/tmp/' + [ x , y , z ] . join ( '/' ) ;
13
-
14
- var err = mkdirp . sync ( file ) ;
15
- if ( err ) t . fail ( err ) ;
16
- else path . exists ( file , function ( ex ) {
13
+
14
+ try {
15
+ mkdirp . sync ( file , 0755 ) ;
16
+ } catch ( err ) {
17
+ t . fail ( err ) ;
18
+ return t . end ( ) ;
19
+ }
20
+
21
+ path . exists ( file , function ( ex ) {
17
22
if ( ! ex ) t . fail ( 'file not created' )
18
23
else fs . stat ( file , function ( err , stat ) {
19
24
if ( err ) t . fail ( err )
@@ -22,6 +27,6 @@ test('umask sync modes', function (t) {
22
27
t . ok ( stat . isDirectory ( ) , 'target not a directory' ) ;
23
28
t . end ( ) ;
24
29
}
25
- } )
26
- } )
30
+ } ) ;
31
+ } ) ;
27
32
} ) ;
You can’t perform that action at this time.
0 commit comments