From 2f1d8cc196a84c8a277c44f23c0a724c2d934fb3 Mon Sep 17 00:00:00 2001 From: John-David Dalton Date: Sat, 7 Sep 2013 16:49:10 -0500 Subject: [PATCH] Ensure `_.debounce` passes vendor/underscore unit tests. --- lodash.js | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/lodash.js b/lodash.js index 3c74ce1b8..f3d7ee286 100644 --- a/lodash.js +++ b/lodash.js @@ -5489,7 +5489,9 @@ thisArg = this; trailingCall = trailing && (timeoutId || !leading); - if (maxWait !== false) { + if (maxWait === false) { + var leadingCall = leading && !timeoutId; + } else { if (!maxTimeoutId && !leading) { lastCalled = stamp; } @@ -5505,12 +5507,12 @@ maxTimeoutId = setTimeout(maxDelayed, remaining); } } - else if (leading && !timeoutId) { - result = func.apply(thisArg, args); - } if (!timeoutId && wait !== maxWait) { timeoutId = setTimeout(delayed, wait); } + if (leadingCall) { + result = func.apply(thisArg, args); + } return result; }; }