diff options
Diffstat (limited to 'lib/internal')
-rw-r--r-- | lib/internal/fs/rimraf.js | 3 | ||||
-rw-r--r-- | lib/internal/fs/utils.js | 3 |
2 files changed, 5 insertions, 1 deletions
diff --git a/lib/internal/fs/rimraf.js b/lib/internal/fs/rimraf.js index 9d5fcad49c..3212fdd539 100644 --- a/lib/internal/fs/rimraf.js +++ b/lib/internal/fs/rimraf.js @@ -35,7 +35,8 @@ function rimraf(path, options, callback) { if (err) { if (retryErrorCodes.has(err.code) && retries < options.maxRetries) { retries++; - return setTimeout(_rimraf, retries * 100, path, options, CB); + const delay = retries * options.retryDelay; + return setTimeout(_rimraf, delay, path, options, CB); } // The file is already gone. diff --git a/lib/internal/fs/utils.js b/lib/internal/fs/utils.js index f71a21b7d4..4d7f0d6765 100644 --- a/lib/internal/fs/utils.js +++ b/lib/internal/fs/utils.js @@ -28,6 +28,7 @@ const { const { once } = require('internal/util'); const { toPathIfFileURL } = require('internal/url'); const { + validateInt32, validateUint32 } = require('internal/validators'); const pathModule = require('path'); @@ -565,6 +566,7 @@ function warnOnNonPortableTemplate(template) { } const defaultRmdirOptions = { + retryDelay: 100, maxRetries: 0, recursive: false, }; @@ -580,6 +582,7 @@ const validateRmdirOptions = hideStackFrames((options) => { if (typeof options.recursive !== 'boolean') throw new ERR_INVALID_ARG_TYPE('recursive', 'boolean', options.recursive); + validateInt32(options.retryDelay, 'retryDelay', 0); validateUint32(options.maxRetries, 'maxRetries'); return options; |