Avoid issues with Titanium, clearTimeout, and an undefined timer id.

Former-commit-id: 18813fcebbab5185164c236a647b0b6436d495ff
This commit is contained in:
John-David Dalton
2013-05-20 22:53:27 -07:00
parent 25a1d74627
commit 32f0ebbe61
2 changed files with 8 additions and 5 deletions

View File

@@ -2210,7 +2210,7 @@
' var args,',
' result,',
' thisArg,',
' timeoutId;',
' timeoutId = null;',
'',
' function delayed() {',
' timeoutId = null;',
@@ -2567,8 +2567,8 @@
' var args,',
' result,',
' thisArg,',
' timeoutId,',
' lastCalled = 0;',
' lastCalled = 0,',
' timeoutId = null;',
'',
' function trailingCall() {',
' lastCalled = new Date;',

View File

@@ -4639,8 +4639,8 @@
var args,
result,
thisArg,
timeoutId,
callCount = 0,
timeoutId = null,
trailing = true;
function delayed() {
@@ -4660,6 +4660,9 @@
return function() {
args = arguments;
thisArg = this;
// avoid issues with Titanium and `undefined` timeout ids
// https://github.com/appcelerator/titanium_mobile/blob/3_1_0_GA/android/titanium/src/java/ti/modules/titanium/TitaniumModule.java#L185-L192
clearTimeout(timeoutId);
if (leading && ++callCount < 2) {
@@ -4868,9 +4871,9 @@
var args,
result,
thisArg,
timeoutId,
lastCalled = 0,
leading = true,
timeoutId = null,
trailing = true;
function trailingCall() {