Skip to content

Commit

Permalink
Shorten fs.write() promise code
Browse files Browse the repository at this point in the history
  • Loading branch information
RyanZim committed Apr 9, 2018
1 parent da29c3a commit d8fd7a0
Showing 1 changed file with 1 addition and 11 deletions.
12 changes: 1 addition & 11 deletions lib/fs/index.js
Expand Up @@ -83,22 +83,12 @@ exports.read = function (fd, buffer, offset, length, position, callback) {
// fs.write(fd, buffer[, offset[, length[, position]]], callback)
// OR
// fs.write(fd, string[, position[, encoding]], callback)
// so we need to handle both cases
// We need to handle both cases, so we use ...args
exports.write = function (fd, buffer, ...args) {
if (typeof args[args.length - 1] === 'function') {
return fs.write(fd, buffer, ...args)
}

// Check for old, depricated fs.write(fd, string[, position[, encoding]], callback)
if (typeof buffer === 'string') {
return new Promise((resolve, reject) => {
fs.write(fd, buffer, ...args, (err, bytesWritten, buffer) => {
if (err) return reject(err)
resolve({ bytesWritten, buffer })
})
})
}

return new Promise((resolve, reject) => {
fs.write(fd, buffer, ...args, (err, bytesWritten, buffer) => {
if (err) return reject(err)
Expand Down

0 comments on commit d8fd7a0

Please sign in to comment.