Opened 6 years ago

Closed 4 years ago

#17551 closed defect (patchwelcome)

dijit/_WidgetBase getParent called when widget destroyed

Reported by: Wouter Hager Owned by: Sebastien Brunot
Priority: undecided Milestone: 1.13
Component: DojoX Mobile Version: 1.9.1
Keywords: Cc:
Blocked By: Blocking:

Description

In some cases getParent is called when the widget is already destroyed, causing an error because domNode isn't found. This occurs most notably by resizeAll in dojox/mobile/common, which will resize all widgets, even when destroyed.

Change History (9)

comment:1 Changed 6 years ago by bill

Component: GeneralDojoX Mobile
Owner: set to Patrick Ruzand

OK, well widgets have many functions that are expected to fail if they are called after the widget is destroyed. So the problem you are describing seems to be that someone is calling getParent() when they shouldn't be. I don't have any idea why resizeAll() is accessing destroyed widgets.

comment:2 Changed 6 years ago by Wouter Hager

Yes, well, perhaps this should just be checked in each specific widget. I've added the check to my code.

comment:3 Changed 6 years ago by Patrick Ruzand

Milestone: tbd1.10

comment:4 Changed 5 years ago by Patrick Ruzand

Owner: changed from Patrick Ruzand to Sebastien Brunot
Status: newassigned

comment:5 Changed 5 years ago by Sebastien Brunot

Do you have some sample code that illustrate the issue in a real use case ?

comment:6 Changed 5 years ago by Sebastien Brunot

Owner: changed from Sebastien Brunot to Wouter Hager
Status: assignedpending

comment:7 Changed 5 years ago by Patrick Ruzand

Owner: changed from Wouter Hager to Sebastien Brunot
Status: pendingassigned

comment:8 Changed 5 years ago by Patrick Ruzand

Milestone: 1.10tbd

comment:9 Changed 4 years ago by dylan

Milestone: tbd1.12
Resolution: patchwelcome
Status: assignedclosed

Given that no one has shown interest in creating a patch in the past 2+ years, I'm closing this as patchwelcome. Please let us know if you would like to get involved in helping make this change to Dojo!

Note: See TracTickets for help on using tickets.