Merge pull request #94079 from RandomShaper/editor_main_mq

Let EditorLog use the right call queue for thread safety
This commit is contained in:
Rémi Verschelde 2024-07-08 19:13:45 +02:00
commit 16f98cd707
No known key found for this signature in database
GPG Key ID: C3336907360768E1
2 changed files with 2 additions and 6 deletions

View File

@ -58,8 +58,8 @@ void EditorLog::_error_handler(void *p_self, const char *p_func, const char *p_f
MessageType message_type = p_type == ERR_HANDLER_WARNING ? MSG_TYPE_WARNING : MSG_TYPE_ERROR;
if (self->current != Thread::get_caller_id()) {
callable_mp(self, &EditorLog::add_message).call_deferred(err_str, message_type);
if (!Thread::is_main_thread()) {
MessageQueue::get_main_singleton()->push_callable(callable_mp(self, &EditorLog::add_message), err_str, message_type);
} else {
self->add_message(err_str, message_type);
}
@ -557,8 +557,6 @@ EditorLog::EditorLog() {
eh.errfunc = _error_handler;
eh.userdata = this;
add_error_handler(&eh);
current = Thread::get_caller_id();
}
void EditorLog::deinit() {

View File

@ -156,8 +156,6 @@ private:
ErrorHandlerList eh;
Thread::ID current;
//void _dragged(const Point2& p_ofs);
void _meta_clicked(const String &p_meta);
void _clear_request();