From a509c3b6386255da0d52a3952f9bf209a7389597 Mon Sep 17 00:00:00 2001 From: lolodomo Date: Tue, 6 Apr 2021 08:47:20 +0200 Subject: [PATCH] [sonyprojector] Fix handling of InterruptedException (Thread.sleep) (#10458) Signed-off-by: Laurent Garnier --- .../internal/communication/SonyProjectorConnector.java | 6 +++++- .../communication/serial/SonyProjectorSerialConnector.java | 1 + 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/bundles/org.openhab.binding.sonyprojector/src/main/java/org/openhab/binding/sonyprojector/internal/communication/SonyProjectorConnector.java b/bundles/org.openhab.binding.sonyprojector/src/main/java/org/openhab/binding/sonyprojector/internal/communication/SonyProjectorConnector.java index 5db6305c33..c037924dd9 100644 --- a/bundles/org.openhab.binding.sonyprojector/src/main/java/org/openhab/binding/sonyprojector/internal/communication/SonyProjectorConnector.java +++ b/bundles/org.openhab.binding.sonyprojector/src/main/java/org/openhab/binding/sonyprojector/internal/communication/SonyProjectorConnector.java @@ -950,9 +950,13 @@ public abstract class SonyProjectorConnector { if (!runningSession) { close(); } - } catch (SonyProjectorException | InterruptedException e) { + } catch (SonyProjectorException e) { logger.debug("Send IR {} failed: {}", item.getName(), e.getMessage()); throw new SonyProjectorException("Send IR " + item.getName() + " failed: " + e.getMessage()); + } catch (InterruptedException e) { + logger.debug("Send IR {} interrupted: {}", item.getName(), e.getMessage()); + Thread.currentThread().interrupt(); + throw new SonyProjectorException("Send IR " + item.getName() + " interrupted: " + e.getMessage()); } logger.debug("Send IR {} succeeded", item.getName()); diff --git a/bundles/org.openhab.binding.sonyprojector/src/main/java/org/openhab/binding/sonyprojector/internal/communication/serial/SonyProjectorSerialConnector.java b/bundles/org.openhab.binding.sonyprojector/src/main/java/org/openhab/binding/sonyprojector/internal/communication/serial/SonyProjectorSerialConnector.java index 2d0787d009..673c86182d 100644 --- a/bundles/org.openhab.binding.sonyprojector/src/main/java/org/openhab/binding/sonyprojector/internal/communication/serial/SonyProjectorSerialConnector.java +++ b/bundles/org.openhab.binding.sonyprojector/src/main/java/org/openhab/binding/sonyprojector/internal/communication/serial/SonyProjectorSerialConnector.java @@ -302,6 +302,7 @@ public class SonyProjectorSerialConnector extends SonyProjectorConnector impleme logger.debug("RXTX library CPU load workaround, sleep forever"); Thread.sleep(Long.MAX_VALUE); } catch (InterruptedException e) { + Thread.currentThread().interrupt(); } } } -- 2.47.3