MCPcopy
hub / github.com/webpack/webpack / handleError

Function handleError

lib/CleanPlugin.js:206–234  ·  lib/CleanPlugin.js::handleError
(err)

Source from the content-addressed store, hash-verified

204 * @returns {void}
205 */
206 const handleError = (err) => {
207 const isAlreadyRemoved = () =>
208 new Promise((resolve) => {
209 if (err.code === class="st">"ENOENT") {
210 resolve(true);
211 } else if (err.code === class="st">"EPERM") {
212 class="cm">// https://github.com/isaacs/rimraf/blob/main/src/fix-eperm.ts#L37
213 class="cm">// fs.existsSync(path) === false https://github.com/webpack/webpack/actions/runs/15493412975/job/43624272783?pr=19586
214 doStat(fs, path, (err) => {
215 if (err) {
216 resolve(err.code === class="st">"ENOENT");
217 } else {
218 resolve(false);
219 }
220 });
221 } else {
222 resolve(false);
223 }
224 });
225
226 isAlreadyRemoved().then((isRemoved) => {
227 if (isRemoved) {
228 log(`${filename} was removed during cleaning by something else`);
229 handleParent();
230 return callback();
231 }
232 return callback(err);
233 });
234 };
235 const handleParent = () => {
236 if (parent && --parent.remaining === 0) push(parent.job);
237 };

Callers 2

_doneMethod · 0.70
applyDiffFunction · 0.70

Calls 4

isAlreadyRemovedFunction · 0.85
handleParentFunction · 0.85
logFunction · 0.70
callbackFunction · 0.50

Tested by

no test coverage detected