summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXwdit <44023235+Xwdit@users.noreply.github.com>2021-11-17 09:29:29 +0100
committerGitHub <noreply@github.com>2021-11-17 09:29:29 +0100
commit0bd96bd2cfbb2ffd3549d09b92e4c58a50fbd032 (patch)
tree71c7a5c14f96573d4ed2118582332e5dff4173c5
parent08eb8c9fc355260d66b6d1a8cd854e26102d3eed (diff)
Fix the exceptions in signal disconnection
Use the correct method to get SignalData to fix exceptions in signal disconnection
-rw-r--r--core/object/object.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/core/object/object.cpp b/core/object/object.cpp
index 8e96695f0d..90bd697d37 100644
--- a/core/object/object.cpp
+++ b/core/object/object.cpp
@@ -1410,7 +1410,7 @@ void Object::_disconnect(const StringName &p_signal, const Callable &p_callable,
ERR_FAIL_COND_MSG(!s->slot_map.has(*p_callable.get_base_comparator()), "Disconnecting nonexistent signal '" + p_signal + "', callable: " + p_callable + ".");
- SignalData::Slot *slot = &s->slot_map[p_callable];
+ SignalData::Slot *slot = &s->slot_map[*p_callable.get_base_comparator()];
if (!p_force) {
slot->reference_count--; // by default is zero, if it was not referenced it will go below it