destroyDescendants tried to remove already removed childs
getDescendants returns all descendants, not only immediate. So destroyDescendants should call destroy instead of destroyRecursive. This bug can be reproduced in dijit/test_Tree.html (expand all leaves in tree and press destroy button - it will remove not only tree, but all widgets)
Index: _Widget.js
===================================================================
--- _Widget.js (revision 11729)
+++ _Widget.js (working copy)
@@ -235,7 +235,7 @@
// descendants.
// TODO: should I destroy in the reverse order, to go bottom up?
- dojo.forEach(this.getDescendants(), function(widget){ widget.destroyRecursive(); });
+ dojo.forEach(this.getDescendants(), function(widget){ widget.destroy(); });
},
uninitialize: function(){
Change History (3)
Milestone: |
→ 1.1
|
Owner: |
set to bill
|
Resolution: |
→ fixed
|
Status: |
new →
closed
|
(In [11735]) Fix regression in [11688] that was causing double destroy calls on same widget. Fixes #5326, Refs #1836, #4902.