File tree Expand file tree Collapse file tree 2 files changed +9
-6
lines changed Expand file tree Collapse file tree 2 files changed +9
-6
lines changed Original file line number Diff line number Diff line change @@ -32,7 +32,7 @@ jQuery.extend({
32
32
. fail ( newDefer . reject )
33
33
. progress ( newDefer . notify ) ;
34
34
} else {
35
- newDefer [ action + "With" ] ( this === deferred ? newDefer : this , [ returned ] ) ;
35
+ newDefer [ action + "With" ] ( this === promise ? newDefer . promise ( ) : this , [ returned ] ) ;
36
36
}
37
37
} :
38
38
newDefer [ action ]
@@ -70,8 +70,11 @@ jQuery.extend({
70
70
} , tuples [ i ^ 1 ] [ 2 ] . disable , tuples [ 2 ] [ 2 ] . lock ) ;
71
71
}
72
72
73
- // deferred[ resolve | reject | notify ] = list.fire
74
- deferred [ tuple [ 0 ] ] = list . fire ;
73
+ // deferred[ resolve | reject | notify ]
74
+ deferred [ tuple [ 0 ] ] = function ( ) {
75
+ deferred [ tuple [ 0 ] + "With" ] ( promise , arguments ) ;
76
+ return this ;
77
+ } ;
75
78
deferred [ tuple [ 0 ] + "With" ] = list . fireWith ;
76
79
} ) ;
77
80
Original file line number Diff line number Diff line change @@ -292,7 +292,7 @@ test( "jQuery.Deferred.then - context", function() {
292
292
defer . resolve ( 2 ) ;
293
293
294
294
piped . done ( function ( value ) {
295
- strictEqual ( this . promise ( ) , piped , "default context gets updated to latest defer in the chain" ) ;
295
+ strictEqual ( this , piped , "default context gets updated to latest promise in the chain" ) ;
296
296
strictEqual ( value , 6 , "proper value received" ) ;
297
297
} ) ;
298
298
} ) ;
@@ -395,8 +395,8 @@ test( "jQuery.when - joined", function() {
395
395
expected = shouldResolve ? [ 1 , 1 ] : [ 0 , undefined ] ,
396
396
expectedNotify = shouldNotify && [ willNotify [ id1 ] , willNotify [ id2 ] ] ,
397
397
code = id1 + "/" + id2 ,
398
- context1 = defer1 && jQuery . isFunction ( defer1 . promise ) ? defer1 : undefined ,
399
- context2 = defer2 && jQuery . isFunction ( defer2 . promise ) ? defer2 : undefined ;
398
+ context1 = defer1 && jQuery . isFunction ( defer1 . promise ) ? defer1 . promise ( ) : undefined ,
399
+ context2 = defer2 && jQuery . isFunction ( defer2 . promise ) ? defer2 . promise ( ) : undefined ;
400
400
401
401
jQuery . when ( defer1 , defer2 ) . done ( function ( a , b ) {
402
402
if ( shouldResolve ) {
You can’t perform that action at this time.
0 commit comments