mirror of
https://github.com/godotengine/godot.git
synced 2025-10-27 19:54:27 +00:00
Merge pull request #44848 from mrushyendra/disconnect_err_msg
Issue correct error when disconnecting nonexistent connection with a valid signal
This commit is contained in:
commit
cc416b0304
1 changed files with 6 additions and 1 deletions
|
|
@ -1357,7 +1357,12 @@ void Object::_disconnect(const StringName &p_signal, const Callable &p_callable,
|
||||||
ERR_FAIL_COND(!target_object);
|
ERR_FAIL_COND(!target_object);
|
||||||
|
|
||||||
SignalData *s = signal_map.getptr(p_signal);
|
SignalData *s = signal_map.getptr(p_signal);
|
||||||
ERR_FAIL_COND_MSG(!s, vformat("Nonexistent signal '%s' in %s.", p_signal, to_string()));
|
if (!s) {
|
||||||
|
bool signal_is_valid = ClassDB::has_signal(get_class_name(), p_signal) ||
|
||||||
|
(!script.is_null() && Ref<Script>(script)->has_script_signal(p_signal));
|
||||||
|
ERR_FAIL_COND_MSG(signal_is_valid, "Attempt to disconnect a nonexistent connection from '" + to_string() + "'. signal: '" + p_signal + "', callable: '" + p_callable + "'.");
|
||||||
|
}
|
||||||
|
ERR_FAIL_COND_MSG(!s, vformat("Disconnecting nonexistent signal '%s' in %s.", p_signal, to_string()));
|
||||||
|
|
||||||
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 + ".");
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue