View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0004001 | DarkRadiant | Design/Coding | public | 01.01.2015 03:20 | 07.07.2015 09:26 |
Reporter | greebo | Assigned To | greebo | ||
Priority | normal | Severity | normal | Reproducibility | have not tried |
Status | closed | Resolution | fixed | ||
Product Version | 2.0.1 | ||||
Target Version | 2.0.2 | Fixed in Version | 2.0.2 | ||
Summary | 0004001: scene::Node destruction issues, PatchNode destructor never invoked | ||||
Description | Maybe due to the default scene::Node dtor being non-virtual the ~PatchNode() dtor almost never fires, except for the case when a patch is actually deleted and ends up in the UndoStack. In the latter case the virtual ~INode() dtor makes sure the hierarchy is properly destructed. There are also circular dependencies of shared_ptrs in the scene, with child nodes holding strong references to their parent (IRenderEntityPtr). | ||||
Steps To Reproduce | - Attach debugger and set breakpoint to ~PatchNode() - Open a map containing patches or create one from scratch - Hit File > New map and discard the currently loaded one - Notice that the breakpoint never gets hit Deleting a Patch from the loaded map and selecting New map will fire the destructor. | ||||
Tags | No tags attached. | ||||
Date Modified | Username | Field | Change |
---|---|---|---|
01.01.2015 03:20 | greebo | New Issue | |
01.01.2015 03:20 | greebo | Target Version | => 2.0.2 |
01.01.2015 03:20 | greebo | Assigned To | => greebo |
01.01.2015 03:20 | greebo | Status | new => assigned |
01.01.2015 03:21 | greebo | Relationship added | related to 0002881 |
01.01.2015 07:32 | greebo | Summary | scene::Node destructor non-virtual, PatchNode dtor almost never invoked => scene::Node destruction issues, PatchNode destructor never invoked |
01.01.2015 07:32 | greebo | Description Updated | |
01.01.2015 08:03 | greebo | Note Added: 0007290 | |
01.01.2015 08:03 | greebo | Status | assigned => resolved |
01.01.2015 08:03 | greebo | Fixed in Version | => 2.0.2 |
01.01.2015 08:03 | greebo | Resolution | open => fixed |
07.07.2015 09:26 | greebo | Status | resolved => closed |