From bf0741bae898f904b725ab3f0a34a5e5b58a53e9 Mon Sep 17 00:00:00 2001 From: Douglas Christopher Wilson Date: Sun, 23 Aug 2015 16:32:19 -0400 Subject: [PATCH] perf: remove argument reassignment --- HISTORY.md | 1 + index.js | 16 ++++++++-------- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/HISTORY.md b/HISTORY.md index f27fdd5..1b2d2cc 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -2,6 +2,7 @@ unreleased ========== * perf: enable strict mode + * perf: remove argument reassignment 1.6.2 / 2015-05-11 ================== diff --git a/index.js b/index.js index 5c9d2f6..19d9993 100644 --- a/index.js +++ b/index.js @@ -28,23 +28,23 @@ var onHeaders = require('on-headers'); */ module.exports = function timeout(time, options) { - options = options || {}; + var opts = options || {}; - time = typeof time === 'string' + var delay = typeof time === 'string' ? ms(time) : Number(time || 5000); - var respond = !('respond' in options) || options.respond === true; + var respond = !('respond' in opts) || opts.respond === true; return function(req, res, next) { var destroy = req.socket.destroy; var id = setTimeout(function(){ req.timedout = true; - req.emit('timeout', time); - }, time); + req.emit('timeout', delay); + }, delay); if (respond) { - req.on('timeout', onTimeout(time, next)); + req.on('timeout', onTimeout(delay, next)); } req.clearTimeout = function(){ @@ -66,11 +66,11 @@ module.exports = function timeout(time, options) { }; }; -function onTimeout(time, cb){ +function onTimeout(delay, cb) { return function(){ cb(createError(503, 'Response timeout', { code: 'ETIMEDOUT', - timeout: time + timeout: delay })); }; }