From c24c1ec7cec6b4a26768f5e67d8c7d300a6ab013 Mon Sep 17 00:00:00 2001 From: rrr Date: Mon, 6 Apr 2026 06:25:52 +0900 Subject: [PATCH] fix: prevent clearing non-existent timers in NitroBackgroundTimer --- ios/NitroBackgroundTimer.swift | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/ios/NitroBackgroundTimer.swift b/ios/NitroBackgroundTimer.swift index f177ada..7c9a233 100644 --- a/ios/NitroBackgroundTimer.swift +++ b/ios/NitroBackgroundTimer.swift @@ -51,7 +51,9 @@ class NitroBackgroundTimer: HybridNitroBackgroundTimerSpec { DispatchQueue.main.async { // Clear existing timer with same ID - self.clearTimeout(id: id) + if (self.timeoutTimers[intId] != nil){ + self.clearTimeout(id: id) + } self.acquireBackgroundTask() let timer = Timer.scheduledTimer(withTimeInterval: duration / 1000.0, repeats: false) { [weak self] _ in @@ -101,7 +103,9 @@ class NitroBackgroundTimer: HybridNitroBackgroundTimerSpec { DispatchQueue.main.async { // Clear existing timer with same ID - self.clearInterval(id: id) + if (self.intervalTimers[intId] != nil){ + self.clearInterval(id: id) + } self.acquireBackgroundTask() let timer = Timer.scheduledTimer(withTimeInterval: interval / 1000.0, repeats: true) { [weak self] _ in