diff options
Diffstat (limited to 'ext/node/polyfills/assert.ts')
-rw-r--r-- | ext/node/polyfills/assert.ts | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/ext/node/polyfills/assert.ts b/ext/node/polyfills/assert.ts index 3d7660487..00677e3f7 100644 --- a/ext/node/polyfills/assert.ts +++ b/ext/node/polyfills/assert.ts @@ -17,6 +17,9 @@ import { ERR_MISSING_ARGS, } from "ext:deno_node/internal/errors.ts"; import { isDeepEqual } from "ext:deno_node/internal/util/comparisons.ts"; +import { primordials } from "ext:core/mod.js"; + +const { ObjectPrototypeIsPrototypeOf } = primordials; function innerFail(obj: { actual?: unknown; @@ -744,8 +747,8 @@ function validateThrownError( error = undefined; } if ( - error instanceof Function && error.prototype !== undefined && - error.prototype instanceof Error + typeof error === "function" && + (error === Error || ObjectPrototypeIsPrototypeOf(Error, error)) ) { // error is a constructor if (e instanceof error) { |