From dab65eb6bdd7a7f0907d9361d019ea129bbf9f3d Mon Sep 17 00:00:00 2001 From: Eric Mastro Date: Mon, 19 Sep 2022 16:38:23 +1000 Subject: [PATCH] catch contract errors to return bool # Conflicts: # codex/contracts/proofs.nim # vendor/nim-ethers --- codex/contracts/proofs.nim | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/codex/contracts/proofs.nim b/codex/contracts/proofs.nim index 2b40fb51..cb6cc5de 100644 --- a/codex/contracts/proofs.nim +++ b/codex/contracts/proofs.nim @@ -26,15 +26,19 @@ method isProofRequired*(proofs: OnChainProofs, id: SlotId): Future[bool] {.async.} = try: return await proofs.storage.isProofRequired(id) - except ValueError: - return false + except JsonRpcProviderError as e: + if e.revertReason == "Slot empty": + return false + raise e method willProofBeRequired*(proofs: OnChainProofs, id: SlotId): Future[bool] {.async.} = try: return await proofs.storage.willProofBeRequired(id) - except ValueError: - return false + except JsonRpcProviderError: + if e.revertReason == "Slot empty": + return false + raise e method getProofEnd*(proofs: OnChainProofs, id: SlotId): Future[UInt256] {.async.} =