From f632b3b6e734670a4d21b2a5c7b23131e418077d Mon Sep 17 00:00:00 2001 From: Kitson Kelly Date: Mon, 5 Oct 2020 20:35:51 +1100 Subject: fix(core): handle unregistered errors in core better (#7817) --- cli/rt/10_dispatch_minimal.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'cli') diff --git a/cli/rt/10_dispatch_minimal.js b/cli/rt/10_dispatch_minimal.js index a843d4a9e..dceb23e5f 100644 --- a/cli/rt/10_dispatch_minimal.js +++ b/cli/rt/10_dispatch_minimal.js @@ -50,7 +50,13 @@ function unwrapResponse(res) { if (res.err != null) { - throw new (core.getErrorClass(res.err.className))(res.err.message); + const ErrorClass = core.getErrorClass(res.err.className); + if (!ErrorClass) { + throw new Error( + `Unregistered error class: "${res.err.className}"\n ${res.err.message}\n Classes of errors returned from ops should be registered via Deno.core.registerErrorClass().`, + ); + } + throw new ErrorClass(res.err.message); } return res.result; } -- cgit v1.2.3