From 8304a0c500ee07c1a7e6447dadc26cbf2294db1d Mon Sep 17 00:00:00 2001
From: ksuprynowicz <ksuprynowicz@post.pl>
Date: Tue, 23 Aug 2022 01:23:06 +0200
Subject: [PATCH] Fixed clearTimeout behavior when called with expired timer

---
 libraries/script-engine/src/ScriptManager.h | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/libraries/script-engine/src/ScriptManager.h b/libraries/script-engine/src/ScriptManager.h
index 03f169c3e7..fe78fcd517 100644
--- a/libraries/script-engine/src/ScriptManager.h
+++ b/libraries/script-engine/src/ScriptManager.h
@@ -475,6 +475,8 @@ public:
      * }, 10000);
      */
     Q_INVOKABLE void clearInterval(QTimer* timer) { stopTimer(timer); }
+    // Overloaded version is needed in case the timer has expired
+    Q_INVOKABLE void clearInterval(QVariantMap timer) { ; }
 
     /**jsdoc
      * Stops a timeout timer set by {@link Script.setTimeout|setTimeout}.
@@ -490,6 +492,8 @@ public:
      * //Script.clearTimeout(timer);
      */
     Q_INVOKABLE void clearTimeout(QTimer* timer) { stopTimer(timer); }
+    // Overloaded version is needed in case the timer has expired
+    Q_INVOKABLE void clearTimeout(QVariantMap timer) { ; }
 
     /**jsdoc
      * Prints a message to the program log and emits {@link Script.printedMessage}.