2
2
var utils = require ( './utils' ) ;
3
3
var external = require ( "./external" ) ;
4
4
var utf8 = require ( './utf8' ) ;
5
- var utils = require ( './utils' ) ;
6
5
var ZipEntries = require ( './zipEntries' ) ;
7
6
var Crc32Probe = require ( './stream/Crc32Probe' ) ;
8
7
var nodejsUtils = require ( "./nodejsUtils" ) ;
@@ -18,18 +17,18 @@ function checkEntryCRC32(zipEntry) {
18
17
worker . on ( "error" , function ( e ) {
19
18
reject ( e ) ;
20
19
} )
21
- . on ( "end" , function ( ) {
22
- if ( worker . streamInfo . crc32 !== zipEntry . decompressed . crc32 ) {
23
- reject ( new Error ( "Corrupted zip : CRC32 mismatch" ) ) ;
24
- } else {
25
- resolve ( ) ;
26
- }
27
- } )
28
- . resume ( ) ;
20
+ . on ( "end" , function ( ) {
21
+ if ( worker . streamInfo . crc32 !== zipEntry . decompressed . crc32 ) {
22
+ reject ( new Error ( "Corrupted zip : CRC32 mismatch" ) ) ;
23
+ } else {
24
+ resolve ( ) ;
25
+ }
26
+ } )
27
+ . resume ( ) ;
29
28
} ) ;
30
29
}
31
30
32
- module . exports = function ( data , options ) {
31
+ module . exports = function ( data , options ) {
33
32
var zip = this ;
34
33
options = utils . extend ( options || { } , {
35
34
base64 : false ,
@@ -44,39 +43,39 @@ module.exports = function(data, options) {
44
43
}
45
44
46
45
return utils . prepareContent ( "the loaded zip file" , data , true , options . optimizedBinaryString , options . base64 )
47
- . then ( function ( data ) {
48
- var zipEntries = new ZipEntries ( options ) ;
49
- zipEntries . load ( data ) ;
50
- return zipEntries ;
51
- } ) . then ( function checkCRC32 ( zipEntries ) {
52
- var promises = [ external . Promise . resolve ( zipEntries ) ] ;
53
- var files = zipEntries . files ;
54
- if ( options . checkCRC32 ) {
46
+ . then ( function ( data ) {
47
+ var zipEntries = new ZipEntries ( options ) ;
48
+ zipEntries . load ( data ) ;
49
+ return zipEntries ;
50
+ } ) . then ( function checkCRC32 ( zipEntries ) {
51
+ var promises = [ external . Promise . resolve ( zipEntries ) ] ;
52
+ var files = zipEntries . files ;
53
+ if ( options . checkCRC32 ) {
54
+ for ( var i = 0 ; i < files . length ; i ++ ) {
55
+ promises . push ( checkEntryCRC32 ( files [ i ] ) ) ;
56
+ }
57
+ }
58
+ return external . Promise . all ( promises ) ;
59
+ } ) . then ( function addFiles ( results ) {
60
+ var zipEntries = results . shift ( ) ;
61
+ var files = zipEntries . files ;
55
62
for ( var i = 0 ; i < files . length ; i ++ ) {
56
- promises . push ( checkEntryCRC32 ( files [ i ] ) ) ;
63
+ var input = files [ i ] ;
64
+ zip . file ( input . fileNameStr , input . decompressed , {
65
+ binary : true ,
66
+ optimizedBinaryString : true ,
67
+ date : input . date ,
68
+ dir : input . dir ,
69
+ comment : input . fileCommentStr . length ? input . fileCommentStr : null ,
70
+ unixPermissions : input . unixPermissions ,
71
+ dosPermissions : input . dosPermissions ,
72
+ createFolders : options . createFolders
73
+ } ) ;
74
+ }
75
+ if ( zipEntries . zipComment . length ) {
76
+ zip . comment = zipEntries . zipComment ;
57
77
}
58
- }
59
- return external . Promise . all ( promises ) ;
60
- } ) . then ( function addFiles ( results ) {
61
- var zipEntries = results . shift ( ) ;
62
- var files = zipEntries . files ;
63
- for ( var i = 0 ; i < files . length ; i ++ ) {
64
- var input = files [ i ] ;
65
- zip . file ( input . fileNameStr , input . decompressed , {
66
- binary : true ,
67
- optimizedBinaryString : true ,
68
- date : input . date ,
69
- dir : input . dir ,
70
- comment : input . fileCommentStr . length ? input . fileCommentStr : null ,
71
- unixPermissions : input . unixPermissions ,
72
- dosPermissions : input . dosPermissions ,
73
- createFolders : options . createFolders
74
- } ) ;
75
- }
76
- if ( zipEntries . zipComment . length ) {
77
- zip . comment = zipEntries . zipComment ;
78
- }
79
78
80
- return zip ;
81
- } ) ;
79
+ return zip ;
80
+ } ) ;
82
81
} ;
0 commit comments