From 85866c63c0705c53113d1663110d3e2faafb171e Mon Sep 17 00:00:00 2001 From: Pawel <36118444+s-pw@users.noreply.github.com> Date: Tue, 15 Feb 2022 22:30:39 -0800 Subject: [PATCH] [bluetooth.airthings] Catch all exceptions in a scheduled task to prevent future executions from being suppressed (#12261) * Fixes #9862 Catch all exceptions in scheduled task to prevent future executions from being suppressed. Signed-off-by: Pawel Switalski Signed-off-by: Pawel --- .../airthings/internal/AbstractAirthingsHandler.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/bundles/org.openhab.binding.bluetooth.airthings/src/main/java/org/openhab/binding/bluetooth/airthings/internal/AbstractAirthingsHandler.java b/bundles/org.openhab.binding.bluetooth.airthings/src/main/java/org/openhab/binding/bluetooth/airthings/internal/AbstractAirthingsHandler.java index 4d3d89c3d..464e99fcb 100644 --- a/bundles/org.openhab.binding.bluetooth.airthings/src/main/java/org/openhab/binding/bluetooth/airthings/internal/AbstractAirthingsHandler.java +++ b/bundles/org.openhab.binding.bluetooth.airthings/src/main/java/org/openhab/binding/bluetooth/airthings/internal/AbstractAirthingsHandler.java @@ -106,8 +106,12 @@ abstract public class AbstractAirthingsHandler extends BeaconBluetoothHandler { } private void executePeridioc() { - sinceLastReadSec.addAndGet(CHECK_PERIOD_SEC); - execute(); + try { + sinceLastReadSec.addAndGet(CHECK_PERIOD_SEC); + execute(); + } catch (Exception e) { // catch all to avoid scheduleWithFixedDelay being suppressed + logger.warn("Failed to read Airthings device", e); + } } private synchronized void execute() {