]> source.dussan.org Git - jquery.git/commitdiff
Fixes #8692. Strange FF4 bug: values changed onto the arguments object sometimes...
authorjaubourg <j@ubourg.net>
Wed, 30 Mar 2011 16:54:32 +0000 (18:54 +0200)
committerjaubourg <j@ubourg.net>
Wed, 30 Mar 2011 16:54:32 +0000 (18:54 +0200)
src/deferred.js

index f0d7c08c52e16144f9ccf9423e9c98d6af598365..90f9c8089cee420d4215f8e131bc5f2d110a48fd 100644 (file)
@@ -144,7 +144,10 @@ jQuery.extend({
                        return function( value ) {
                                args[ i ] = arguments.length > 1 ? sliceDeferred.call( arguments, 0 ) : value;
                                if ( !( --count ) ) {
-                                       deferred.resolveWith( deferred, args );
+                                       // Strange bug in FF4:
+                                       // Values changed onto the arguments object sometimes end up as undefined values
+                                       // outside the $.when method. Cloning the object into a fresh array solves the issue
+                                       deferred.resolveWith( deferred, sliceDeferred.call( args, 0 ) );
                                }
                        };
                }