File: fix-for-mkdirp.diff

package info (click to toggle)
node-webpack 4.43.0-6~bpo10%2B1
  • links: PTS, VCS
  • area: main
  • in suites: buster-backports
  • size: 21,220 kB
  • sloc: javascript: 69,992; makefile: 22
file content (60 lines) | stat: -rw-r--r-- 1,828 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
Description: fix for mkdirp ≥ 1
Author: Xavier Guimard <yadd@debian.org>
Forwarded: no
Last-Update: 2020-10-25

--- a/lib/Compiler.js
+++ b/lib/Compiler.js
@@ -469,9 +469,8 @@
 					if (targetFile.match(/\/|\\/)) {
 						const dir = path.dirname(targetFile);
 						this.outputFileSystem.mkdirp(
-							this.outputFileSystem.join(outputPath, dir),
-							writeOut
-						);
+							this.outputFileSystem.join(outputPath, dir)
+						).then(() => {writeOut()}).catch((er) => {writeOut(er)});
 					} else {
 						writeOut();
 					}
@@ -491,7 +490,7 @@
 		this.hooks.emit.callAsync(compilation, err => {
 			if (err) return callback(err);
 			outputPath = compilation.getPath(this.outputPath);
-			this.outputFileSystem.mkdirp(outputPath, emitFiles);
+			this.outputFileSystem.mkdirp(outputPath).then(() => {emitFiles()}).catch(er => {throw er});
 		});
 	}
 
@@ -517,9 +516,10 @@
 		if (!recordsOutputPathDirectory) {
 			return writeFile();
 		}
-		this.outputFileSystem.mkdirp(recordsOutputPathDirectory, err => {
-			if (err) return callback(err);
+		this.outputFileSystem.mkdirp(recordsOutputPathDirectory).then(() => {
 			writeFile();
+		}).catch( err => {
+			return callback(err);
 		});
 	}
 
--- a/lib/LibManifestPlugin.js
+++ b/lib/LibManifestPlugin.js
@@ -72,13 +72,14 @@
 							? JSON.stringify(manifest, null, 2)
 							: JSON.stringify(manifest);
 						const content = Buffer.from(manifestContent, "utf8");
-						compiler.outputFileSystem.mkdirp(path.dirname(targetPath), err => {
-							if (err) return callback(err);
+						compiler.outputFileSystem.mkdirp(path.dirname(targetPath)).then(() => {
 							compiler.outputFileSystem.writeFile(
 								targetPath,
 								content,
 								callback
 							);
+						}).catch( err => {
+							return callback(err);
 						});
 					},
 					callback