[Bf-blender-cvs] [f59ff9e03a6] master: Fix crash when showing NLA actions in the Outliner
Julian Eisel
noreply at git.blender.org
Thu Mar 11 13:22:24 CET 2021
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
More information about the Bf-blender-cvs
mailing list