1.4: xhr.readyState assignment crash (ajax.js line 461)

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

1.4: xhr.readyState assignment crash (ajax.js line 461)

Steven Black-2
(Re-posted here since there is currently zero traction on the new
forum)

 I have a question about code in ajax.js that is crashing for me in
both FF (latest) and IE (latest).

The code below starts on line 453 of th ajax.js module. -- (Note: In
the released build this line ended-up at line number 4983 of
jquery-1.4.js)

My questions are

1) Why the try {} around the function definition?  That doesn't seem
right, but I've been wrong before :-)

2) The crash is not caught by the try{}

The offending line is #461

 (461)    xhr.readyState = 0;

The error as reported by the FireBug console: "setting a property that
has only a getter".

Anyone have insight to share?  When I comment-out that line everything
works perfectly.

Here is a clip of the code in ajax.js starting at line #453

(453) // Override the abort handler, if we can (IE doesn't allow it,
but that's OK)
        // Opera doesn't fire onreadystatechange at all on abort
        try {
            var oldAbort = xhr.abort;
            xhr.abort = function() {
                if ( xhr ) {
                    oldAbort.call( xhr );
                    if ( xhr ) {
                        xhr.readyState = 0;       // Boom!
                    }
                }

                onreadystatechange();
            };
        } catch(e) { }

--
You received this message because you are subscribed to the Google Groups "jQuery Development" group.
To post to this group, send email to [hidden email].
To unsubscribe from this group, send email to [hidden email].
For more options, visit this group at http://groups.google.com/group/jquery-dev?hl=en.


Reply | Threaded
Open this post in threaded view
|

Re: 1.4: xhr.readyState assignment crash (ajax.js line 461)

John Resig
Administrator
Replied over in the forum.

--John



On Sun, Jan 17, 2010 at 4:53 PM, Steven Black <[hidden email]> wrote:

> (Re-posted here since there is currently zero traction on the new
> forum)
>
>  I have a question about code in ajax.js that is crashing for me in
> both FF (latest) and IE (latest).
>
> The code below starts on line 453 of th ajax.js module. -- (Note: In
> the released build this line ended-up at line number 4983 of
> jquery-1.4.js)
>
> My questions are
>
> 1) Why the try {} around the function definition?  That doesn't seem
> right, but I've been wrong before :-)
>
> 2) The crash is not caught by the try{}
>
> The offending line is #461
>
>  (461)    xhr.readyState = 0;
>
> The error as reported by the FireBug console: "setting a property that
> has only a getter".
>
> Anyone have insight to share?  When I comment-out that line everything
> works perfectly.
>
> Here is a clip of the code in ajax.js starting at line #453
>
> (453) // Override the abort handler, if we can (IE doesn't allow it,
> but that's OK)
>        // Opera doesn't fire onreadystatechange at all on abort
>        try {
>            var oldAbort = xhr.abort;
>            xhr.abort = function() {
>                if ( xhr ) {
>                    oldAbort.call( xhr );
>                    if ( xhr ) {
>                        xhr.readyState = 0;       // Boom!
>                    }
>                }
>
>                onreadystatechange();
>            };
>        } catch(e) { }
>
> --
> You received this message because you are subscribed to the Google Groups "jQuery Development" group.
> To post to this group, send email to [hidden email].
> To unsubscribe from this group, send email to [hidden email].
> For more options, visit this group at http://groups.google.com/group/jquery-dev?hl=en.
>
>
>
>

--
You received this message because you are subscribed to the Google Groups "jQuery Development" group.
To post to this group, send email to [hidden email].
To unsubscribe from this group, send email to [hidden email].
For more options, visit this group at http://groups.google.com/group/jquery-dev?hl=en.