Skip to content

Commit 817ce38

Browse files
jigar140291fnagel
authored andcommitted
Datepicker: Fixed current instance memory leak and added unit testcases
1 parent 0c860b0 commit 817ce38

File tree

2 files changed

+12
-2
lines changed

2 files changed

+12
-2
lines changed

Diff for: tests/unit/datepicker/methods.js

+11-2
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,18 @@ define( [
88
QUnit.module( "datepicker: methods" );
99

1010
QUnit.test( "destroy", function( assert ) {
11-
assert.expect( 33 );
11+
assert.expect( 35 );
1212
var inl,
13-
inp = testHelper.init( "#inp" );
13+
inp = testHelper.init( "#inp" ),
14+
dp = $( "#ui-datepicker-div" );
15+
16+
// Destroy and clear active reference
17+
inp.datepicker( "show" );
18+
assert.equal( dp.css( "display" ), "block", "Datepicker - visible" );
19+
inp.datepicker( "hide" ).datepicker( "destroy" );
20+
assert.ok( $.datepicker._curInst == null, "Datepicker - destroyed and cleared reference" );
21+
22+
inp = testHelper.init( "#inp" );
1423
assert.ok( inp.is( ".hasDatepicker" ), "Default - marker class set" );
1524
assert.ok( $.data( inp[ 0 ], testHelper.PROP_NAME ), "Default - instance present" );
1625
assert.ok( inp.next().is( "#alt" ), "Default - button absent" );

Diff for: ui/widgets/datepicker.js

+1
Original file line numberDiff line numberDiff line change
@@ -408,6 +408,7 @@ $.extend( Datepicker.prototype, {
408408

409409
if ( datepicker_instActive === inst ) {
410410
datepicker_instActive = null;
411+
this._curInst = null;
411412
}
412413
},
413414

0 commit comments

Comments
 (0)