Commit: e48054ece47765c37f55af50922580ee1645f6df
Author: Nathan Craddock
Date:   Thu Jul 23 12:40:33 2020 -0600
Branches: blender-v2.83-release
https://developer.blender.org/rBe48054ece47765c37f55af50922580ee1645f6df

Fix T79187: Outliner "Make Single User" crash

When "ID Data" -> "Make Single User" is chosen with selected elements
that are not curves, there is a crash. This fix ensures that the id in the
callback function is an Action.

===================================================================

M       source/blender/editors/space_outliner/outliner_tools.c

===================================================================

diff --git a/source/blender/editors/space_outliner/outliner_tools.c 
b/source/blender/editors/space_outliner/outliner_tools.c
index 8813af4c197..06135641f3c 100644
--- a/source/blender/editors/space_outliner/outliner_tools.c
+++ b/source/blender/editors/space_outliner/outliner_tools.c
@@ -789,11 +789,17 @@ static void id_select_linked_cb(bContext *C,
 static void singleuser_action_cb(bContext *C,
                                  ReportList *UNUSED(reports),
                                  Scene *UNUSED(scene),
-                                 TreeElement *UNUSED(te),
+                                 TreeElement *te,
                                  TreeStoreElem *tsep,
                                  TreeStoreElem *tselem,
                                  void *UNUSED(user_data))
 {
+  /* This callback runs for all selected elements, some of which may not be 
actions which results
+   * in a crash. */
+  if (te->idcode != ID_AC) {
+    return;
+  }
+
   ID *id = tselem->id;
 
   if (id) {

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to