fix: support fs.realpath(Sync).native. (#892)

This commit is contained in:
bruce-one
2021-09-15 01:26:26 +10:00
committed by GitHub
parent 0c7b942f7f
commit fe9f73d22b
+19
View File
@@ -399,6 +399,25 @@ function shimFs(binary: NexeBinary, fs: any = require('fs')) {
}
}
if (typeof fs.realpath.native === 'function') {
nfs.realpath.native = function realpathNative(filepath: any, options: any, cb: any): void {
setupManifest()
const key = getKey(filepath)
if (isString(filepath) && (manifest[filepath] || manifest[key])) {
return process.nextTick(() => cb(null, filepath))
}
return originalFsMethods.realpath.native.call(fs, filepath, options, cb)
}
nfs.realpathSync.native = function realpathSyncNative(filepath: any, options: any) {
setupManifest()
const key = getKey(filepath)
if (manifest[key]) {
return filepath
}
return originalFsMethods.realpathSync.native.call(fs, filepath, options)
}
}
Object.assign(fs, nfs)
lazyRestoreFs = () => {