aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/bun.js/bindings/OnigurumaRegExp.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/bun.js/bindings/OnigurumaRegExp.cpp b/src/bun.js/bindings/OnigurumaRegExp.cpp
index c9dedb09c..446a576e8 100644
--- a/src/bun.js/bindings/OnigurumaRegExp.cpp
+++ b/src/bun.js/bindings/OnigurumaRegExp.cpp
@@ -465,12 +465,18 @@ JSC_DEFINE_CUSTOM_GETTER(onigurumaRegExpProtoGetterFlags, (JSGlobalObject * glob
JSC_DEFINE_CUSTOM_GETTER(onigurumaRegExpProtoGetterLastIndex, (JSGlobalObject * globalObject, EncodedJSValue encodedThis, PropertyName))
{
auto* thisValue = jsDynamicCast<OnigurumaRegEx*>(JSValue::decode(encodedThis));
+ if (UNLIKELY(!thisValue)) {
+ return JSValue::encode(jsUndefined());
+ }
return JSValue::encode(jsNumber(thisValue->m_lastIndex));
}
JSC_DEFINE_CUSTOM_SETTER(onigurumaRegExpProtoSetterLastIndex, (JSGlobalObject * globalObject, EncodedJSValue encodedThis, EncodedJSValue encodedValue, PropertyName))
{
auto* thisValue = jsDynamicCast<OnigurumaRegEx*>(JSValue::decode(encodedThis));
+ if (UNLIKELY(!thisValue)) {
+ return JSValue::encode(jsUndefined());
+ }
auto throwScope = DECLARE_THROW_SCOPE(globalObject->vm());
JSValue value = JSValue::decode(encodedValue);
if (!value.isAnyInt()) {