From 3e3acd8b6cb59a34b7819f6887e5386f6b8a30c6 Mon Sep 17 00:00:00 2001 From: "Jay Freeman (saurik)" Date: Tue, 5 Jan 2016 00:42:16 -0800 Subject: [PATCH] Allow a * on a CString to get the first character. --- Execute.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/Execute.cpp b/Execute.cpp index 310ddf6..78aaf1b 100644 --- a/Execute.cpp +++ b/Execute.cpp @@ -985,7 +985,9 @@ static JSValueRef CString_getProperty(JSContextRef context, JSObjectRef object, CString *internal(reinterpret_cast(JSObjectGetPrivate(object))); ssize_t offset; - if (!CYGetOffset(pool, context, property, offset)) + if (JSStringIsEqualToUTF8CString(property, "$cyi")) + offset = 0; + else if (!CYGetOffset(pool, context, property, offset)) return NULL; return CYCastJSValue(context, CYJSString(CYUTF8String(&internal->value_[offset], 1))); @@ -996,7 +998,9 @@ static bool CString_setProperty(JSContextRef context, JSObjectRef object, JSStri CString *internal(reinterpret_cast(JSObjectGetPrivate(object))); ssize_t offset; - if (!CYGetOffset(pool, context, property, offset)) + if (JSStringIsEqualToUTF8CString(property, "$cyi")) + offset = 0; + else if (!CYGetOffset(pool, context, property, offset)) return false; const char *data(CYPoolCString(pool, context, value)); -- 2.47.2