summaryrefslogtreecommitdiffstats
path: root/core/object/worker_thread_pool.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'core/object/worker_thread_pool.cpp')
-rw-r--r--core/object/worker_thread_pool.cpp11
1 files changed, 2 insertions, 9 deletions
diff --git a/core/object/worker_thread_pool.cpp b/core/object/worker_thread_pool.cpp
index cfc3ac3bcf..2fcd0867e6 100644
--- a/core/object/worker_thread_pool.cpp
+++ b/core/object/worker_thread_pool.cpp
@@ -75,10 +75,6 @@ void WorkerThreadPool::_process_task(Task *p_task) {
if (p_task->group) {
// Handling a group
bool do_post = false;
- Callable::CallError ce;
- Variant ret;
- Variant arg;
- Variant *argptr = &arg;
while (true) {
uint32_t work_index = p_task->group->index.postincrement();
@@ -91,8 +87,7 @@ void WorkerThreadPool::_process_task(Task *p_task) {
} else if (p_task->template_userdata) {
p_task->template_userdata->callback_indexed(work_index);
} else {
- arg = work_index;
- p_task->callable.callp((const Variant **)&argptr, 1, ret, ce);
+ p_task->callable.call(work_index);
}
// This is the only way to ensure posting is done when all tasks are really complete.
@@ -141,9 +136,7 @@ void WorkerThreadPool::_process_task(Task *p_task) {
p_task->template_userdata->callback();
memdelete(p_task->template_userdata);
} else {
- Callable::CallError ce;
- Variant ret;
- p_task->callable.callp(nullptr, 0, ret, ce);
+ p_task->callable.call();
}
task_mutex.lock();