Skip to content

Commit d4f2556

Browse files
committed
Dialog: Stop tracking instance in destroy() to avoid memory leaks
Fixes #11125
1 parent 17c7f69 commit d4f2556

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

ui/dialog.js

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -155,6 +155,7 @@ return $.widget( "ui.dialog", {
155155
var next,
156156
originalPosition = this.originalPosition;
157157

158+
this._stopTrackingInstance();
158159
this._destroyOverlay();
159160

160161
this.element
@@ -623,6 +624,17 @@ return $.widget( "ui.dialog", {
623624
return instances;
624625
},
625626

627+
_stopTrackingInstance: function() {
628+
var i = 0,
629+
instances = this._trackingInstances();
630+
631+
for ( ; i < instances.length; i++ ) {
632+
if ( instances[ i ] === this ) {
633+
instances.splice( i, 1 );
634+
}
635+
}
636+
},
637+
626638
_minHeight: function() {
627639
var options = this.options;
628640

0 commit comments

Comments
 (0)