Browse Source

Fix method validation in Thread

kobewi 3 years ago
parent
commit
3f0248dc8e
1 changed files with 1 additions and 1 deletions
  1. 1 1
      core/bind/core_bind.cpp

+ 1 - 1
core/bind/core_bind.cpp

@@ -2701,7 +2701,7 @@ void _Thread::_start_func(void *ud) {
 Error _Thread::start(Object *p_instance, const StringName &p_method, const Variant &p_userdata, Priority p_priority) {
 	ERR_FAIL_COND_V_MSG(is_active(), ERR_ALREADY_IN_USE, "Thread already started.");
 	ERR_FAIL_COND_V(!p_instance, ERR_INVALID_PARAMETER);
-	ERR_FAIL_COND_V(p_method == StringName(), ERR_INVALID_PARAMETER);
+	ERR_FAIL_COND_V(p_method == StringName() || !p_instance->has_method(p_method), ERR_INVALID_PARAMETER);
 	ERR_FAIL_INDEX_V(p_priority, PRIORITY_MAX, ERR_INVALID_PARAMETER);
 
 	ret = Variant();