From d3a90c7714db19399a32897270226fa460f38248 Mon Sep 17 00:00:00 2001 From: Derrick Hammer Date: Mon, 25 Jul 2022 23:09:26 -0400 Subject: [PATCH] *Better catch rpc node errors and ensure they are passed through properly to the client --- src/rpc/common.ts | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/rpc/common.ts b/src/rpc/common.ts index 2457413..e573c79 100644 --- a/src/rpc/common.ts +++ b/src/rpc/common.ts @@ -68,7 +68,20 @@ export function proxyRpcMethod( provider = getRpcProvider(chainId as string); } gatewayProviders[chainId as string] = provider; - return await provider(method, args); + + let resp; + try { + resp = await provider(method, args); + } catch (e: any) { + e = e as Error; + if ("error" in e) { + return e.error; + } + + return e; + } + + return resp; } return await sendRelay(