From 7a7a24ee2ce28607ec7e988053a38713c2fa3404 Mon Sep 17 00:00:00 2001 From: WolverinDEV Date: Sun, 18 Apr 2021 21:20:11 +0200 Subject: [PATCH] Fixed recurring tasks sometimes getting totally dropped when canceling a recurring task --- src/misc/task_executor.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/misc/task_executor.cpp b/src/misc/task_executor.cpp index 05a492a..c6bafdf 100644 --- a/src/misc/task_executor.cpp +++ b/src/misc/task_executor.cpp @@ -195,7 +195,6 @@ void task_executor::enqueue_recurring_task(task_recurring *task) { task_context_->task_recurring_head = task; } else { previous_task->next = task; - task->next = next_task; } } } @@ -249,7 +248,7 @@ task_executor::task_cancel_result task_executor::internal_cancel_task(std::futur previous_task->next = current_task->next; } else { assert(task_context_->task_recurring_head == current_task); - task_context_->task_recurring_head = nullptr; + task_context_->task_recurring_head = current_task->next; } assert(task_context_->task_recurring_count > 0);