From c81e61e4fefaad74db22a367c8f8d5de73f48d52 Mon Sep 17 00:00:00 2001 From: fiatjaf Date: Thu, 15 Oct 2020 12:32:28 -0300 Subject: [PATCH] guards and safety timeouts around paymentChecker intervals. --- lnbits/core/static/js/wallet.js | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/lnbits/core/static/js/wallet.js b/lnbits/core/static/js/wallet.js index c0ce8033..36385e0f 100644 --- a/lnbits/core/static/js/wallet.js +++ b/lnbits/core/static/js/wallet.js @@ -300,6 +300,10 @@ new Vue({ } } + clearInterval(this.receive.paymentChecker) + setTimeout(() => { + clearInterval(this.receive.paymentChecker) + }, 40000) this.receive.paymentChecker = setInterval(() => { let hash = response.data.payment_hash @@ -428,6 +432,10 @@ new Vue({ LNbits.api .payInvoice(this.g.wallet, this.parse.data.request) .then(response => { + clearInterval(this.parse.paymentChecker) + setTimeout(() => { + clearInterval(this.parse.paymentChecker) + }, 40000) this.parse.paymentChecker = setInterval(() => { LNbits.api .getPayment(this.g.wallet, response.data.payment_hash) @@ -465,6 +473,10 @@ new Vue({ .then(response => { this.parse.show = false + clearInterval(this.parse.paymentChecker) + setTimeout(() => { + clearInterval(this.parse.paymentChecker) + }, 40000) this.parse.paymentChecker = setInterval(() => { LNbits.api .getPayment(this.g.wallet, response.data.payment_hash)