View Issue Details

IDProjectCategoryView StatusLast Update
0002538Slicer4Core: Base Codepublic2014-03-06 05:10
Reporternicole Assigned Tofinetjul  
PriorityhighSeveritycrashReproducibilityalways
Status closedResolutionfixed 
Product Version 
Target VersionSlicer 4.2.0Fixed in VersionSlicer 4.2.0 
Summary0002538: slice pipeline causing a crash when restoring scene views with models + slices visible in 3d
Description

When restoring a scene view in the brain atlas mrb, slicer crashes. Tracing it in the debugger, it's due to the end restore event triggering an update of the display node pipeline in vtkMRMLModelSliceDisplayableManager.cxx.

Ideally I'd like to get this fixed before Sept 20th mid day so that Marianna can work on the Brain Atlas test case before she'll be out of the office.

Steps To Reproduce

download new brain atlas mrb from:
http://slicer.kitware.com/midas3/download?items=8286
Restore the Brain Stem scene view from the toolbar

Additional Information

(I wasn't able to reproduce this with a simpler scene file)

TagsNo tags attached.

Relationships

related to 0002428 closedfinetjul Model maker creates less models than the number of labels in the input image 
parent of 0002540 closedfinetjul avoid rendering during batch processing 
related to 0002539 closedfinetjul Update node reference before AddNode to scene 
child of 0002513 closedfinetjul Tutorial 11 - Brain Atlas 

Activities

finetjul

finetjul

2012-09-20 11:12

administrator   ~0006147

Last edited: 2012-09-20 11:36

Regression from r20972:
http://viewvc.slicer.org/viewvc.cgi/Slicer4?view=revision&revision=20972

Node is being removed from scene and deleted, but vtkMRMLModelSliceDisplayableManager ignores it (vtkMRMLModelSliceDisplayableManager
::OnMRMLSceneNodeRemoved) and doesn't remove its pointer to it.

Unfortunately, r20972 doens't refer to an issue number :-P
After investigation it appears it's due to issue 0002428

nicole

nicole

2012-09-20 11:26

administrator   ~0006148

The model slice displayable manager might have to respond to the batch processing end event to reset itself to the update scene then.

finetjul

finetjul

2012-09-20 12:16

administrator   ~0006151

In 0002428 comment 0006037, it is said that GetDisplayNode() was called, however I can't see in the code where it is (except in a rendering routine).
I suggest that:

  • vtkMRMLModelSliceDisplayableManager::OnMRMLSceneNodeRemoved removes the node as before
  • but doesn't trigger a refresh if in batch processing
    Steve, if it works and tests pass, do you think it's a valid solution ?
pieper

pieper

2012-09-20 13:55

administrator   ~0006154

Hi Julien -

As I recall, GetDisplayNodes was being called as a byproduct of AddDisplayableNode in vtkMRMLModelSliceDisplayableManager::OnMRMLSceneNodeAdded so a render wasn't required (although it could be triggered - see new child issue).

GetDisplayNodes was causeing the polydata from the displayble node to be assigned into the wrong display node pipeline and lots of stuff was broken. :/

So as long as GetDisplayNodes isn't called when batch processing is being performed then we should be okay with your other changes.

-Steve

finetjul

finetjul

2012-09-21 06:02

administrator   ~0006158

Fixed in r21025

Steve, r20972 was not about AddDisplayableNode (OnMRMLSceneNodeAdded) but about OnMRMLSceneNodeRemoved

pieper

pieper

2012-09-21 07:24

administrator   ~0006161

The source of the bad behavior was fixed here:

http://viewvc.slicer.org/viewvc.cgi/Slicer4?view=revision&revision=20970

20972 was added for consistency.

jcfr

jcfr

2014-03-06 05:08

administrator   ~0010968

Closing resolved issues that have not been updated in more than 3 months

Issue History

Date Modified Username Field Change
2012-09-19 14:29 nicole New Issue
2012-09-19 14:29 nicole Status new => assigned
2012-09-19 14:29 nicole Assigned To => finetjul
2012-09-19 14:36 nicole Priority immediate => high
2012-09-19 14:36 nicole Reproducibility have not tried => always
2012-09-19 14:36 nicole Description Updated
2012-09-19 15:04 nicole Relationship added child of 0002513
2012-09-20 11:12 finetjul Note Added: 0006147
2012-09-20 11:18 finetjul Relationship added related to 0002428
2012-09-20 11:19 finetjul Note Edited: 0006147
2012-09-20 11:26 nicole Note Added: 0006148
2012-09-20 11:31 finetjul Note Edited: 0006147
2012-09-20 11:36 finetjul Note Edited: 0006147
2012-09-20 12:16 finetjul Note Added: 0006151
2012-09-20 12:37 finetjul Relationship added related to 0002539
2012-09-20 13:51 pieper Relationship added parent of 0002540
2012-09-20 13:55 pieper Note Added: 0006154
2012-09-21 06:02 finetjul Note Added: 0006158
2012-09-21 06:02 finetjul Status assigned => resolved
2012-09-21 06:02 finetjul Fixed in Version => Slicer 4.2.0 - coming release
2012-09-21 06:02 finetjul Resolution open => fixed
2012-09-21 07:24 pieper Note Added: 0006161
2014-03-06 05:08 jcfr Note Added: 0010968
2014-03-06 05:10 jcfr Status resolved => closed