fix: clear timeout after promise rejection (#24864)
This commit is contained in:
@@ -1,9 +1,8 @@
|
|||||||
export function withTimeout<T>(promise: Promise<T>, ms: number): Promise<T> {
|
export function withTimeout<T>(promise: Promise<T>, ms: number): Promise<T> {
|
||||||
let timeout: NodeJS.Timeout
|
let timeout: NodeJS.Timeout
|
||||||
return Promise.race([
|
return Promise.race([
|
||||||
promise.then((result) => {
|
promise.finally(() => {
|
||||||
clearTimeout(timeout)
|
clearTimeout(timeout)
|
||||||
return result
|
|
||||||
}),
|
}),
|
||||||
new Promise<never>((_, reject) => {
|
new Promise<never>((_, reject) => {
|
||||||
timeout = setTimeout(() => {
|
timeout = setTimeout(() => {
|
||||||
|
|||||||
Reference in New Issue
Block a user