From 65fd4e7518f38002a64e55bb3c734f18fe9bb726 Mon Sep 17 00:00:00 2001 From: Robert Nagy Date: Wed, 22 Feb 2023 10:29:47 +0100 Subject: [PATCH] fix: use normal timers for delays < 1s (#1961) Fixes: https://github.com/nodejs/undici/issues/1950 --- lib/timers.js | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/lib/timers.js b/lib/timers.js index f96bc62f286..4f4fcea4413 100644 --- a/lib/timers.js +++ b/lib/timers.js @@ -79,11 +79,15 @@ class Timeout { module.exports = { setTimeout (callback, delay, opaque) { - return new Timeout(callback, delay, opaque) + return delay < 1e3 + ? setTimeout(callback, delay, opaque) + : new Timeout(callback, delay, opaque) }, clearTimeout (timeout) { - if (timeout && timeout.clear) { + if (timeout instanceof Timeout) { timeout.clear() + } else { + clearTimeout(timeout) } } }