diff options
author | Bastien Montagne <bastien@blender.org> | 2022-09-08 17:32:35 +0300 |
---|---|---|
committer | Bastien Montagne <bastien@blender.org> | 2022-09-08 17:34:31 +0300 |
commit | 406243c2fde7472ea39f1eb6316311aec5b72e13 (patch) | |
tree | 2f14eea889d9ad6c8eebc0c40105e98148bf0d4c /source/blender/blenkernel/intern/node.cc | |
parent | 462014b59b4f5ad110ebfcbc17dfa1f896582110 (diff) |
IDManagement: change `IDTypeInfo.owner_get` to instead return address of the owner_id pointer.
Also rename the callback. That way, we can keep moving toward a more
generic handling of those embedded IDs (think e.g. about copy code).
Diffstat (limited to 'source/blender/blenkernel/intern/node.cc')
-rw-r--r-- | source/blender/blenkernel/intern/node.cc | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/source/blender/blenkernel/intern/node.cc b/source/blender/blenkernel/intern/node.cc index ab26ccc5d3f..a78257a250b 100644 --- a/source/blender/blenkernel/intern/node.cc +++ b/source/blender/blenkernel/intern/node.cc @@ -401,10 +401,10 @@ static void node_foreach_path(ID *id, BPathForeachPathData *bpath_data) } } -static ID *node_owner_get(ID *id) +static ID **node_owner_pointer_get(ID *id) { if ((id->flag & LIB_EMBEDDED_DATA) == 0) { - return id; + return NULL; } /* TODO: Sort this NO_MAIN or not for embedded node trees. See T86119. */ // BLI_assert((id->tag & LIB_TAG_NO_MAIN) == 0); @@ -413,7 +413,7 @@ static ID *node_owner_get(ID *id) BLI_assert(ntree->owner_id != NULL); BLI_assert(ntreeFromID(ntree->owner_id) == ntree); - return ntree->owner_id; + return &ntree->owner_id; } static void write_node_socket_default_value(BlendWriter *writer, bNodeSocket *sock) @@ -1036,7 +1036,7 @@ IDTypeInfo IDType_ID_NT = { /* foreach_id */ node_foreach_id, /* foreach_cache */ node_foreach_cache, /* foreach_path */ node_foreach_path, - /* owner_get */ node_owner_get, + /* owner_pointer_get */ node_owner_pointer_get, /* blend_write */ ntree_blend_write, /* blend_read_data */ ntree_blend_read_data, |