[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[taler-wallet-core] 05/06: throw error after 5 seconds if wallet-core di
From: |
gnunet |
Subject: |
[taler-wallet-core] 05/06: throw error after 5 seconds if wallet-core didn't reply to a command |
Date: |
Tue, 17 Jan 2023 20:01:42 +0100 |
This is an automated email from the git hooks/post-receive script.
sebasjm pushed a commit to branch master
in repository wallet-core.
commit 252382a9375ea05f62389e33f111c3fa008d8fff
Author: Sebastian <sebasjm@gmail.com>
AuthorDate: Tue Jan 17 15:59:55 2023 -0300
throw error after 5 seconds if wallet-core didn't reply to a command
---
.../src/platform/chrome.ts | 54 +++++++++++++---------
1 file changed, 31 insertions(+), 23 deletions(-)
diff --git a/packages/taler-wallet-webextension/src/platform/chrome.ts
b/packages/taler-wallet-webextension/src/platform/chrome.ts
index fc51a65fb..23730c2d3 100644
--- a/packages/taler-wallet-webextension/src/platform/chrome.ts
+++ b/packages/taler-wallet-webextension/src/platform/chrome.ts
@@ -14,8 +14,13 @@
GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/>
*/
-import { classifyTalerUri, Logger, TalerUriType } from "@gnu-taler/taler-util";
-import { WalletOperations } from "@gnu-taler/taler-wallet-core";
+import {
+ classifyTalerUri,
+ Logger,
+ TalerErrorCode,
+ TalerUriType,
+} from "@gnu-taler/taler-util";
+import { TalerError, WalletOperations } from "@gnu-taler/taler-wallet-core";
import { BackgroundOperations } from "../wxApi.js";
import {
BackgroundPlatformAPI,
@@ -321,12 +326,15 @@ async function sendMessageToBackground<
return new Promise<any>((resolve, reject) => {
logger.trace("send operation to the wallet background", message);
let timedout = false;
- setTimeout(() => {
+ const timerId = setTimeout(() => {
timedout = true;
- reject("timedout");
- }, 2000);
+ throw TalerError.fromDetail(TalerErrorCode.GENERIC_TIMEOUT, {});
+ }, 5 * 1000); //five seconds
chrome.runtime.sendMessage(messageWithId, (backgroundResponse) => {
- if (timedout) return false;
+ if (timedout) {
+ return false; //already rejected
+ }
+ clearTimeout(timerId);
if (chrome.runtime.lastError) {
reject(chrome.runtime.lastError.message);
} else {
@@ -576,26 +584,26 @@ function setAlertedIcon(): void {
interface OffscreenCanvasRenderingContext2D
extends CanvasState,
- CanvasTransform,
- CanvasCompositing,
- CanvasImageSmoothing,
- CanvasFillStrokeStyles,
- CanvasShadowStyles,
- CanvasFilters,
- CanvasRect,
- CanvasDrawPath,
- CanvasUserInterface,
- CanvasText,
- CanvasDrawImage,
- CanvasImageData,
- CanvasPathDrawingStyles,
- CanvasTextDrawingStyles,
- CanvasPath {
+ CanvasTransform,
+ CanvasCompositing,
+ CanvasImageSmoothing,
+ CanvasFillStrokeStyles,
+ CanvasShadowStyles,
+ CanvasFilters,
+ CanvasRect,
+ CanvasDrawPath,
+ CanvasUserInterface,
+ CanvasText,
+ CanvasDrawImage,
+ CanvasImageData,
+ CanvasPathDrawingStyles,
+ CanvasTextDrawingStyles,
+ CanvasPath {
readonly canvas: OffscreenCanvas;
}
declare const OffscreenCanvasRenderingContext2D: {
prototype: OffscreenCanvasRenderingContext2D;
- new (): OffscreenCanvasRenderingContext2D;
+ new(): OffscreenCanvasRenderingContext2D;
};
interface OffscreenCanvas extends EventTarget {
@@ -608,7 +616,7 @@ interface OffscreenCanvas extends EventTarget {
}
declare const OffscreenCanvas: {
prototype: OffscreenCanvas;
- new (width: number, height: number): OffscreenCanvas;
+ new(width: number, height: number): OffscreenCanvas;
};
function createCanvas(size: number): OffscreenCanvas {
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.
- [taler-wallet-core] branch master updated (99d7cbae0 -> 420493b3e), gnunet, 2023/01/17
- [taler-wallet-core] 02/06: payto URI builder, gnunet, 2023/01/17
- [taler-wallet-core] 03/06: stronger type check to be sure that ErrorDetails is consistent, gnunet, 2023/01/17
- [taler-wallet-core] 06/06: use payto builder and prevent showing cancel for non-payment, gnunet, 2023/01/17
- [taler-wallet-core] 01/06: use URL api to stringify payto://, gnunet, 2023/01/17
- [taler-wallet-core] 04/06: re-use the same kyc function from withdrawal for deposits, gnunet, 2023/01/17
- [taler-wallet-core] 05/06: throw error after 5 seconds if wallet-core didn't reply to a command,
gnunet <=