The isTimeout fix from #970 was causing unintended status bugs (fixed). This also includes a fix for errors that occurred during an empty eval in IE (but #1410).

This commit is contained in:
John Resig 2007-07-20 19:33:44 +00:00
parent f267cfaedf
commit 78db847ef2

View file

@ -655,8 +655,10 @@ jQuery.extend({
var status; var status;
try { try {
status = isTimeout || (jQuery.httpSuccess( xml ) ? status = isTimeout == "timeout" && "timeout" ||
s.ifModified && jQuery.httpNotModified( xml, s.url ) ? "notmodified" : "success" : "error"); !jQuery.httpSuccess( xml ) && "error" ||
s.ifModified && jQuery.httpNotModified( xml, s.url ) && "notmodified" ||
"success";
// Make sure that the request was successful or notmodified // Make sure that the request was successful or notmodified
if ( status != "error" && status != "timeout" ) { if ( status != "error" && status != "timeout" ) {
// Cache Last-Modified header, if ifModified mode. // Cache Last-Modified header, if ifModified mode.
@ -826,6 +828,8 @@ jQuery.extend({
// evalulates a script in global context // evalulates a script in global context
// not reliable for safari // not reliable for safari
globalEval: function( data ) { globalEval: function( data ) {
data = jQuery.trim( data );
if ( data ) {
if ( window.execScript ) if ( window.execScript )
window.execScript( data ); window.execScript( data );
else if ( jQuery.browser.safari ) else if ( jQuery.browser.safari )
@ -834,5 +838,6 @@ jQuery.extend({
else else
eval.call( window, data ); eval.call( window, data );
} }
}
}); });