Commit 40ce7f98 authored by jeresig's avatar jeresig

Merge branch 'bug-5735'

parents 6cf981ee 6cb29458
...@@ -380,29 +380,21 @@ jQuery.extend({ ...@@ -380,29 +380,21 @@ jQuery.extend({
} }
// Wait for a response to come back // Wait for a response to come back
var onreadystatechange = function( isTimeout ) { var onreadystatechange = xhr.onreadystatechange = function( isTimeout ) {
// The request was aborted, clear the interval and decrement jQuery.active // The request was aborted, clear the interval and decrement jQuery.active
if ( !xhr || xhr.readyState === 0 ) { if ( !xhr || xhr.readyState === 0 ) {
if ( ival ) { requestDone = true;
// clear poll interval xhr.onreadystatechange = jQuery.noop;
clearInterval( ival );
ival = null; // Handle the global AJAX counter
if ( s.global && ! --jQuery.active ) {
// Handle the global AJAX counter jQuery.event.trigger( "ajaxStop" );
if ( s.global && ! --jQuery.active ) {
jQuery.event.trigger( "ajaxStop" );
}
} }
// The transfer is complete and the data is available, or the request timed out // The transfer is complete and the data is available, or the request timed out
} else if ( !requestDone && xhr && (xhr.readyState === 4 || isTimeout === "timeout") ) { } else if ( !requestDone && xhr && (xhr.readyState === 4 || isTimeout === "timeout") ) {
requestDone = true; requestDone = true;
xhr.onreadystatechange = jQuery.noop;
// clear poll interval
if (ival) {
clearInterval(ival);
ival = null;
}
status = isTimeout === "timeout" ? status = isTimeout === "timeout" ?
"timeout" : "timeout" :
...@@ -446,19 +438,14 @@ jQuery.extend({ ...@@ -446,19 +438,14 @@ jQuery.extend({
} }
}; };
if ( s.async ) { // Timeout checker
// don't attach the handler to the request, just poll it instead if ( s.async && s.timeout > 0 ) {
var ival = setInterval(onreadystatechange, 13); setTimeout(function() {
// Check to see if the request is still happening
// Timeout checker if ( xhr && !requestDone ) {
if ( s.timeout > 0 ) { onreadystatechange( "timeout" );
setTimeout(function() { }
// Check to see if the request is still happening }, s.timeout);
if ( xhr && !requestDone ) {
onreadystatechange( "timeout" );
}
}, s.timeout);
}
} }
// Send the data // Send the data
......
...@@ -464,6 +464,8 @@ jQuery.extend({ ...@@ -464,6 +464,8 @@ jQuery.extend({
return true; return true;
}, },
noop: function() {},
// Evalulates a script in a global context // Evalulates a script in a global context
globalEval: function( data ) { globalEval: function( data ) {
if ( data && rnotwhite.test(data) ) { if ( data && rnotwhite.test(data) ) {
......
...@@ -427,7 +427,7 @@ jQuery.event = { ...@@ -427,7 +427,7 @@ jQuery.event = {
ready: { ready: {
// Make sure the ready event is setup // Make sure the ready event is setup
setup: jQuery.bindReady, setup: jQuery.bindReady,
teardown: function() {} teardown: jQuery.noop
}, },
live: { live: {
......
...@@ -121,7 +121,7 @@ jQuery.offset = { ...@@ -121,7 +121,7 @@ jQuery.offset = {
body.removeChild( container ); body.removeChild( container );
body = container = innerDiv = checkDiv = table = td = null; body = container = innerDiv = checkDiv = table = td = null;
jQuery.offset.initialize = function() {}; jQuery.offset.initialize = jQuery.noop;
}, },
bodyOffset: function( body ) { bodyOffset: function( body ) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment