From 09c0915d0c1d82b2ad0723293708223727452972 Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Sun, 8 Mar 2026 00:15:30 -1000 Subject: [PATCH] [scheduler] Remove redundant callback clear in delete_item_ MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The destructor of std::function already handles releasing captured resources — no need to explicitly null it before delete. --- esphome/core/scheduler.h | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/esphome/core/scheduler.h b/esphome/core/scheduler.h index 8d6998ef2cb..d7fba5df70b 100644 --- a/esphome/core/scheduler.h +++ b/esphome/core/scheduler.h @@ -353,13 +353,8 @@ class Scheduler { // IMPORTANT: Caller must hold the scheduler lock before calling this function. void recycle_item_main_loop_(SchedulerItem *item); - // Helper to delete a SchedulerItem (clears callback then frees memory) - static void delete_item_(SchedulerItem *item) { - if (item != nullptr) { - item->callback = nullptr; - delete item; - } - } + // Helper to delete a SchedulerItem + static void delete_item_(SchedulerItem *item) { delete item; } // Helper to perform full cleanup when too many items are cancelled void full_cleanup_removed_items_();