diff --git a/packages/shared/sdk-server/src/LDClientImpl.ts b/packages/shared/sdk-server/src/LDClientImpl.ts index ecc332c2f2..76e951224f 100644 --- a/packages/shared/sdk-server/src/LDClientImpl.ts +++ b/packages/shared/sdk-server/src/LDClientImpl.ts @@ -940,14 +940,16 @@ export default class LDClientImpl implements LDClient { if (timeout) { const cancelableTimeout = cancelableTimedPromise(timeout, 'waitForInitialization'); return Promise.race([ - basePromise.then(() => cancelableTimeout.cancel()).then(() => this), + basePromise.then(() => this), cancelableTimeout.promise.then(() => this), - ]).catch((reason) => { - if (reason instanceof LDTimeoutError) { - logger?.error(reason.message); - } - throw reason; - }); + ]) + .catch((reason) => { + if (reason instanceof LDTimeoutError) { + logger?.error(reason.message); + } + throw reason; + }) + .finally(() => cancelableTimeout.cancel()); } return basePromise; }