diff options
author | Fabian Schempp <fabianschempp@googlemail.com> | 2021-03-03 01:09:38 +0300 |
---|---|---|
committer | Fabian Schempp <fabianschempp@googlemail.com> | 2021-03-03 01:13:59 +0300 |
commit | a4f81c683896b9ed0c7ca8411c7796f7ccfe65f9 (patch) | |
tree | bf898c9a69202c9678b90d31952b5318d43d58ac /source/blender/editors/space_node/node_intern.h | |
parent | 6aec6568a0a3756f0b974ea3c8a00a1fb39a354b (diff) |
Fix T85966: Wrong link picked when dragging multi-input socket
The socket drag operator stored the index of the last picked socket
into RNA in case the mouse cursor leaves the link while dragging.
This id was not unique which is why sometimes a link from an other node
with the same id is picked.
This patch changes the way the last picked link is stored and stores a
pointer to the link directly into bNodeLinkDrag struct instead.
Differential Revision: https://developer.blender.org/D10590
Diffstat (limited to 'source/blender/editors/space_node/node_intern.h')
-rw-r--r-- | source/blender/editors/space_node/node_intern.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/source/blender/editors/space_node/node_intern.h b/source/blender/editors/space_node/node_intern.h index 972e6cab123..4ec8f56480e 100644 --- a/source/blender/editors/space_node/node_intern.h +++ b/source/blender/editors/space_node/node_intern.h @@ -59,6 +59,9 @@ typedef struct bNodeLinkDrag { ListBase links; bool from_multi_input_socket; int in_out; + + /** Temporarily stores the last picked link from multi input socket operator. */ + struct bNodeLink *last_picked_multi_input_socket_link; } bNodeLinkDrag; typedef struct SpaceNode_Runtime { |