Commit: f59ff9e03a633f64f9587eb67eee7913fed685a8
Author: Julian Eisel
Date: Thu Mar 11 13:14:22 2021 +0100
Branches: master
https://developer.blender.org/rBf59ff9e03a633f64f9587eb67eee7913fed685a8
Fix crash when showing NLA actions in the Outliner
Caused by 2e221de4ceee in combination with 4292bb060d59.
In the former I forgot to set the name for NLA actions in the new code design,
in the latter I made it an assumtion that tree element types using the new
design set the name.
The following commit will make this assumption explicit with an assert.
===================================================================
M source/blender/editors/space_outliner/tree/tree_element.cc
M source/blender/editors/space_outliner/tree/tree_element_nla.cc
M source/blender/editors/space_outliner/tree/tree_element_nla.hh
===================================================================
diff --git a/source/blender/editors/space_outliner/tree/tree_element.cc
b/source/blender/editors/space_outliner/tree/tree_element.cc
index 25bd9a53cf8..116a2e4d3c3 100644
--- a/source/blender/editors/space_outliner/tree/tree_element.cc
+++ b/source/blender/editors/space_outliner/tree/tree_element.cc
@@ -52,7 +52,7 @@ static AbstractTreeElement *tree_element_create(int type,
TreeElement &legacy_te
case TSE_NLA_TRACK:
return new TreeElementNLATrack(legacy_te, *static_cast<NlaTrack *>(idv));
case TSE_NLA_ACTION:
- return new TreeElementNLAAction(legacy_te);
+ return new TreeElementNLAAction(legacy_te, *static_cast<bAction *>(idv));
case TSE_GP_LAYER:
return new TreeElementGPencilLayer(legacy_te, *static_cast<bGPDlayer
*>(idv));
case TSE_R_LAYER_BASE:
diff --git a/source/blender/editors/space_outliner/tree/tree_element_nla.cc
b/source/blender/editors/space_outliner/tree/tree_element_nla.cc
index 5d4ec53e60c..65832e8f981 100644
--- a/source/blender/editors/space_outliner/tree/tree_element_nla.cc
+++ b/source/blender/editors/space_outliner/tree/tree_element_nla.cc
@@ -70,9 +70,11 @@ void TreeElementNLATrack::expand(SpaceOutliner
&space_outliner) const
/* -------------------------------------------------------------------- */
-TreeElementNLAAction::TreeElementNLAAction(TreeElement &legacy_te) :
AbstractTreeElement(legacy_te)
+TreeElementNLAAction::TreeElementNLAAction(TreeElement &legacy_te, const
bAction &action)
+ : AbstractTreeElement(legacy_te)
{
BLI_assert(legacy_te.store_elem->type == TSE_NLA_ACTION);
+ legacy_te.name = action.id.name + 2;
}
} // namespace blender::ed::outliner
diff --git a/source/blender/editors/space_outliner/tree/tree_element_nla.hh
b/source/blender/editors/space_outliner/tree/tree_element_nla.hh
index c94287ce576..7cbc8689483 100644
--- a/source/blender/editors/space_outliner/tree/tree_element_nla.hh
+++ b/source/blender/editors/space_outliner/tree/tree_element_nla.hh
@@ -46,7 +46,7 @@ class TreeElementNLATrack final : public AbstractTreeElement {
class TreeElementNLAAction final : public AbstractTreeElement {
public:
- TreeElementNLAAction(TreeElement &legacy_te);
+ TreeElementNLAAction(TreeElement &legacy_te, const bAction &action);
};
} // namespace blender::ed::outliner
_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs