Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Node Selector for Fibers #14

Closed
slicerbot opened this issue Mar 12, 2020 · 0 comments
Closed

Node Selector for Fibers #14

slicerbot opened this issue Mar 12, 2020 · 0 comments

Comments

@slicerbot
Copy link
Collaborator

This issue was created automatically from an original Mantis Issue. Further discussion may take place here.

jcfr added a commit to jcfr/Slicer that referenced this issue Jul 21, 2023
This commit fixes a regression introduced in 530b8fc (ENH: Update Slicer
Controller adding Thick Slab Reconstruction (Slicer#7021)) and fixes these
tests:
- qMRMLSliceWidgetTest1_vol_and_cube.mrml
- qMRMLVolumeThresholdWidgetTest2_vol_and_cube.mrml

The problem was that in the context of these tests the call to
vtkMRMLSliceLayerLogic::SetSliceNode happens after "UpdateSliceCompositeNode"

For reference the sequence of calls lead to the segfault for test
"qMRMLSliceWidgetTest1_vol_and_cube" was the following:

Slicer#20 main(int, char**) (ac=<optimized out>, av=<optimized out>)
Slicer#19 qMRMLSliceWidgetTest1(int, char**)
Slicer#18 qMRMLSliceWidget::setMRMLSliceNode(vtkMRMLSliceNode*)
Slicer#17 qMRMLSliceControllerWidget::setMRMLSliceNode(vtkMRMLSliceNode*) (this=
Slicer#16 vtkMRMLSliceLogic::SetSliceNode(vtkMRMLSliceNode*)
Slicer#15 vtkMRMLSliceLogic::UpdateSliceCompositeNode() (this=0x56366358b080)
Slicer#14 vtkMRMLSliceLogic::UpdatePipeline() (this=0x56366358b080)
Slicer#13 vtkMRMLSliceLogic::SetSliceExtentsToSliceNode() (this=0x56366358b080)
Slicer#12 vtkMRMLSliceNode::UpdateMatrices() (this=0x563662f41e00)
Slicer#11 vtkMRMLNode::EndModify(int) (previousDisableModifiedEventState=0, this=0x563662f41e00)
Slicer#10 vtkMRMLNode::InvokePendingModifiedEvent() (this=0x563662f41e00)
Slicer#9  vtkSubjectHelper::InvokeEvent(unsigned long, void*, vtkObject*)
Slicer#8  vtkCallbackCommand::Execute(vtkObject*, unsigned long, void*)
Slicer#7  vtkEventBroker::ProcessEvent(vtkObservation*, vtkObject*, unsigned long, void*) (this=0x563662ddf450, observation=0x5636638d4170, caller=<optimized out>, eid=33, callData=0x0)
Slicer#6  vtkEventBroker::InvokeObservation(vtkObservation*, unsigned long, void*)
Slicer#5  vtkCallbackCommand::Execute(vtkObject*, unsigned long, void*)
Slicer#4  vtkMRMLAbstractLogic::MRMLNodesCallback(vtkObject*, unsigned long, void*, void*)
Slicer#3  vtkMRMLAbstractLogic::MRMLNodesCallback(vtkObject*, unsigned long, void*, void*) (callData=0x0, clientData=0x56366358b080, eid=33, caller=0x563662f41e00)
Slicer#2  vtkMRMLSliceLogic::OnMRMLNodeModified(vtkMRMLNode*)
#1  vtkMRMLSliceLogic::UpdateReconstructionSlab(vtkMRMLSliceLogic*, vtkMRMLSliceLayerLogic*)
jcfr added a commit that referenced this issue Jul 21, 2023
This commit fixes a regression introduced in 530b8fc (ENH: Update Slicer
Controller adding Thick Slab Reconstruction (#7021)) and fixes these
tests:
- qMRMLSliceWidgetTest1_vol_and_cube.mrml
- qMRMLVolumeThresholdWidgetTest2_vol_and_cube.mrml

The problem was that in the context of these tests the call to
vtkMRMLSliceLayerLogic::SetSliceNode happens after "UpdateSliceCompositeNode"

For reference the sequence of calls lead to the segfault for test
"qMRMLSliceWidgetTest1_vol_and_cube" was the following:

#20 main(int, char**) (ac=<optimized out>, av=<optimized out>)
#19 qMRMLSliceWidgetTest1(int, char**)
#18 qMRMLSliceWidget::setMRMLSliceNode(vtkMRMLSliceNode*)
#17 qMRMLSliceControllerWidget::setMRMLSliceNode(vtkMRMLSliceNode*) (this=
#16 vtkMRMLSliceLogic::SetSliceNode(vtkMRMLSliceNode*)
#15 vtkMRMLSliceLogic::UpdateSliceCompositeNode() (this=0x56366358b080)
#14 vtkMRMLSliceLogic::UpdatePipeline() (this=0x56366358b080)
#13 vtkMRMLSliceLogic::SetSliceExtentsToSliceNode() (this=0x56366358b080)
#12 vtkMRMLSliceNode::UpdateMatrices() (this=0x563662f41e00)
#11 vtkMRMLNode::EndModify(int) (previousDisableModifiedEventState=0, this=0x563662f41e00)
#10 vtkMRMLNode::InvokePendingModifiedEvent() (this=0x563662f41e00)
#9  vtkSubjectHelper::InvokeEvent(unsigned long, void*, vtkObject*)
#8  vtkCallbackCommand::Execute(vtkObject*, unsigned long, void*)
#7  vtkEventBroker::ProcessEvent(vtkObservation*, vtkObject*, unsigned long, void*) (this=0x563662ddf450, observation=0x5636638d4170, caller=<optimized out>, eid=33, callData=0x0)
#6  vtkEventBroker::InvokeObservation(vtkObservation*, unsigned long, void*)
#5  vtkCallbackCommand::Execute(vtkObject*, unsigned long, void*)
#4  vtkMRMLAbstractLogic::MRMLNodesCallback(vtkObject*, unsigned long, void*, void*)
#3  vtkMRMLAbstractLogic::MRMLNodesCallback(vtkObject*, unsigned long, void*, void*) (callData=0x0, clientData=0x56366358b080, eid=33, caller=0x563662f41e00)
#2  vtkMRMLSliceLogic::OnMRMLNodeModified(vtkMRMLNode*)
#1  vtkMRMLSliceLogic::UpdateReconstructionSlab(vtkMRMLSliceLogic*, vtkMRMLSliceLayerLogic*)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

1 participant