File tree 2 files changed +16
-7
lines changed
2 files changed +16
-7
lines changed Original file line number Diff line number Diff line change
1
+ .DS_Store
1
2
.idea
2
3
node_modules
3
4
reports
Original file line number Diff line number Diff line change @@ -52,6 +52,13 @@ var RE_UnixEntry = new RegExp(
52
52
var RE_DOSEntry = new RegExp (
53
53
"(\\S+)\\s+(\\S+)\\s+" +
54
54
"(<DIR>)?\\s*" +
55
+ // "([0-9]+)?\\s*" +
56
+ "(\\S.*)"
57
+ ) ;
58
+ // fix: RE_DOSEntry2 for dir is numbers
59
+ var RE_DOSEntry2 = new RegExp (
60
+ "(\\S+)\\s+(\\S+)\\s+" +
61
+ // "(<DIR>)?\\s*" +
55
62
"([0-9]+)?\\s*" +
56
63
"(\\S.*)"
57
64
) ;
@@ -265,7 +272,9 @@ var parsers = {
265
272
} ,
266
273
267
274
msdos : function ( entry ) {
268
- var group = entry . match ( RE_DOSEntry ) ;
275
+ var isDir = ( entry . indexOf ( '<DIR>' ) > 0 ) ;
276
+ var regx = isDir ? RE_DOSEntry : RE_DOSEntry2 ;
277
+ var group = entry . match ( regx ) ;
269
278
var type ;
270
279
271
280
if ( ! group ) {
@@ -278,19 +287,18 @@ var parsers = {
278
287
279
288
var time = group [ 2 ] . replace ( / ( \d { 2 } ) : ( \d { 2 } ) ( [ A P ] M ) / , replacer ) ;
280
289
var date = new Date ( group [ 1 ] + " " + time ) . getTime ( ) ;
281
- var dirString = group [ 3 ] ;
282
- var size = group [ 4 ] ;
283
- var name = group [ 5 ] ;
290
+ var size = group [ 3 ] || 0 ;
291
+ var name = group [ 4 ] ;
284
292
285
293
if ( null == name || name === "." || name === ".." ) {
286
294
return null ;
287
295
}
288
296
289
- if ( dirString === "<DIR>" ) {
297
+ if ( isDir ) {
290
298
type = exports . nodeTypes . DIRECTORY_TYPE ;
291
299
size = 0 ;
292
- }
293
- else {
300
+
301
+ } else {
294
302
type = exports . nodeTypes . FILE_TYPE ;
295
303
}
296
304
You can’t perform that action at this time.
0 commit comments