about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorKasper Isager Dalsgarð <kasperisager@hey.com>2024-05-08 23:19:15 +0200
committerbptato <nincsnevem662@gmail.com>2024-05-30 18:55:56 +0200
commit3df4a6d03143543999c142cd9de807956c6351cc (patch)
tree7f2b2ed96f4ff657ca7114083362e1eaa442a755
parentbfdbadd61fa3d52bcd764862a115748686d62593 (diff)
downloadchawan-3df4a6d03143543999c142cd9de807956c6351cc.tar.gz
Add `JS_HasException()` (#265)
-rw-r--r--lib/quickjs/quickjs.c5
-rw-r--r--lib/quickjs/quickjs.h1
2 files changed, 6 insertions, 0 deletions
diff --git a/lib/quickjs/quickjs.c b/lib/quickjs/quickjs.c
index a9589ab0..c33314ec 100644
--- a/lib/quickjs/quickjs.c
+++ b/lib/quickjs/quickjs.c
@@ -6504,6 +6504,11 @@ JSValue JS_GetException(JSContext *ctx)
     return val;
 }
 
+JS_BOOL JS_HasException(JSContext *ctx)
+{
+    return !JS_IsNull(ctx->rt->current_exception);
+}
+
 static void dbuf_put_leb128(DynBuf *s, uint32_t v)
 {
     uint32_t a;
diff --git a/lib/quickjs/quickjs.h b/lib/quickjs/quickjs.h
index 92caf3f5..83107599 100644
--- a/lib/quickjs/quickjs.h
+++ b/lib/quickjs/quickjs.h
@@ -635,6 +635,7 @@ static inline JS_BOOL JS_IsObject(JSValueConst v)
 
 JSValue JS_Throw(JSContext *ctx, JSValue obj);
 JSValue JS_GetException(JSContext *ctx);
+JS_BOOL JS_HasException(JSContext *ctx);
 JS_BOOL JS_IsError(JSContext *ctx, JSValueConst val);
 void JS_ResetUncatchableError(JSContext *ctx);
 JSValue JS_NewError(JSContext *ctx);