summaryrefslogtreecommitdiff
path: root/ext/node/polyfills/assert.ts
diff options
context:
space:
mode:
Diffstat (limited to 'ext/node/polyfills/assert.ts')
-rw-r--r--ext/node/polyfills/assert.ts7
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) {