From d884f0872348736aa7b9214cf9211ecb39925052 Mon Sep 17 00:00:00 2001 From: Justin Starry Date: Sun, 16 Oct 2022 22:13:44 +0800 Subject: [PATCH] Explorer: Show simulation error if no logs are returned (#28416) --- .../src/pages/inspector/SimulatorCard.tsx | 35 ++++++++++++------- 1 file changed, 22 insertions(+), 13 deletions(-) diff --git a/explorer/src/pages/inspector/SimulatorCard.tsx b/explorer/src/pages/inspector/SimulatorCard.tsx index 11ee7a9520..1c5c01d11c 100644 --- a/explorer/src/pages/inspector/SimulatorCard.tsx +++ b/explorer/src/pages/inspector/SimulatorCard.tsx @@ -34,17 +34,17 @@ export function SimulatorCard({ message }: { message: VersionedMessage }) {

Transaction Simulation

- {simulationError ? ( -
- Failed to run simulation: - {simulationError} -
- ) : ( -
-
); } @@ -103,12 +103,21 @@ function useSimulator(message: VersionedMessage) { new VersionedTransaction(message), { replaceRecentBlockhash: true } ); + if (resp.value.logs === null) { throw new Error("Expected to receive logs from simulation"); } - // Prettify logs - setLogs(parseProgramLogs(resp.value.logs, resp.value.err, cluster)); + if ( + resp.value.logs.length === 0 && + typeof resp.value.err === "string" + ) { + setLogs(null); + setError(resp.value.err); + } else { + // Prettify logs + setLogs(parseProgramLogs(resp.value.logs, resp.value.err, cluster)); + } } catch (err) { console.error(err); setLogs(null);