Bug Tracker

Changeset 2420

Show
Ignore:
Timestamp:
07/20/07 19:33:44 (1 year ago)
Author:
jeresig
Message:

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).

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • trunk/jquery/src/ajax/ajax.js

    r2418 r2420  
    656656                var status; 
    657657                try { 
    658                     status = isTimeout || (jQuery.httpSuccess( xml ) ? 
    659                         s.ifModified && jQuery.httpNotModified( xml, s.url ) ? "notmodified" : "success" : "error"); 
     658                    status = isTimeout == "timeout" && "timeout" || 
     659                                    !jQuery.httpSuccess( xml ) && "error" || 
     660                                    s.ifModified && jQuery.httpNotModified( xml, s.url ) && "notmodified" || 
     661                                    "success"; 
    660662                    // Make sure that the request was successful or notmodified 
    661663                    if ( status != "error" && status != "timeout" ) { 
     
    827829    // not reliable for safari 
    828830    globalEval: function( data ) { 
    829         if ( window.execScript ) 
    830             window.execScript( data ); 
    831         else if ( jQuery.browser.safari ) 
    832             // safari doesn't provide a synchronous global eval 
    833             window.setTimeout( data, 0 ); 
    834         else 
    835             eval.call( window, data ); 
     831        data = jQuery.trim( data ); 
     832        if ( data ) { 
     833            if ( window.execScript ) 
     834                window.execScript( data ); 
     835            else if ( jQuery.browser.safari ) 
     836                // safari doesn't provide a synchronous global eval 
     837                window.setTimeout( data, 0 ); 
     838            else 
     839                eval.call( window, data ); 
     840        } 
    836841    } 
    837842