Fix the exceptions in signal disconnection

Use the correct method to get SignalData to fix exceptions in signal disconnection
This commit is contained in:
Xwdit 2021-11-17 09:29:29 +01:00 committed by GitHub
parent 08eb8c9fc3
commit 0bd96bd2cf
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 1 additions and 1 deletions

View File

@ -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 + "."); 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) { if (!p_force) {
slot->reference_count--; // by default is zero, if it was not referenced it will go below it slot->reference_count--; // by default is zero, if it was not referenced it will go below it