@@ -18,31 +18,23 @@ module.exports = (options, fieldname, filename) => {
18
18
const hash = crypto . createHash ( 'md5' ) ;
19
19
let fileSize = 0 ;
20
20
let completed = false ;
21
-
22
- let writeStream = false ;
23
- let writePromise = Promise . resolve ( ) ;
24
21
25
- const createWriteStream = ( ) => {
26
- debugLog ( options , `Opening write stream for ${ fieldname } ->${ filename } ...` ) ;
27
- writeStream = fs . createWriteStream ( tempFilePath ) ;
28
- writePromise = new Promise ( ( resolve , reject ) => {
29
- writeStream . on ( 'finish' , ( ) => {
30
- resolve ( ) ;
31
- } ) ;
32
- writeStream . on ( 'error' , ( err ) => {
33
- debugLog ( options , `Error write temp file: ${ err } ` ) ;
34
- reject ( err ) ;
35
- } ) ;
22
+ debugLog ( options , `Opening write stream for ${ fieldname } ->${ filename } ...` ) ;
23
+ const writeStream = fs . createWriteStream ( tempFilePath ) ;
24
+ const writePromise = new Promise ( ( resolve , reject ) => {
25
+ writeStream . on ( 'finish' , ( ) => resolve ( ) ) ;
26
+ writeStream . on ( 'error' , ( err ) => {
27
+ debugLog ( options , `Error write temp file: ${ err } ` ) ;
28
+ reject ( err ) ;
36
29
} ) ;
37
- } ;
30
+ } ) ;
38
31
39
32
return {
40
33
dataHandler : ( data ) => {
41
34
if ( completed === true ) {
42
35
debugLog ( options , `Error: got ${ fieldname } ->${ filename } data chunk for completed upload!` ) ;
43
36
return ;
44
37
}
45
- if ( writeStream === false ) createWriteStream ( ) ;
46
38
writeStream . write ( data ) ;
47
39
hash . update ( data ) ;
48
40
fileSize += data . length ;
@@ -60,14 +52,12 @@ module.exports = (options, fieldname, filename) => {
60
52
} ,
61
53
cleanup : ( ) => {
62
54
completed = true ;
63
- if ( writeStream !== false ) {
64
- debugLog ( options , `Cleaning up temporary file ${ tempFilePath } ...` ) ;
65
- writeStream . end ( ) ;
66
- deleteFile ( tempFilePath , err => ( err
67
- ? debugLog ( options , `Cleaning up temporary file ${ tempFilePath } failed: ${ err } ` )
68
- : debugLog ( options , `Cleaning up temporary file ${ tempFilePath } done.` )
69
- ) ) ;
70
- }
55
+ debugLog ( options , `Cleaning up temporary file ${ tempFilePath } ...` ) ;
56
+ writeStream . end ( ) ;
57
+ deleteFile ( tempFilePath , err => ( err
58
+ ? debugLog ( options , `Cleaning up temporary file ${ tempFilePath } failed: ${ err } ` )
59
+ : debugLog ( options , `Cleaning up temporary file ${ tempFilePath } done.` )
60
+ ) ) ;
71
61
} ,
72
62
getWritePromise : ( ) => writePromise
73
63
} ;
0 commit comments