diff options
author | Stefan Radomski <radomski@tk.informatik.tu-darmstadt.de> | 2013-09-02 12:38:13 (GMT) |
---|---|---|
committer | Stefan Radomski <radomski@tk.informatik.tu-darmstadt.de> | 2013-09-02 12:38:13 (GMT) |
commit | a874a181add7b292e52140f8c753f663a4cb5a87 (patch) | |
tree | 1b8958ba2abceef58901b3f90f1f05b44321deab /src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/dom/JSCUint16Array.cpp | |
parent | 9caba3540b4d64a5277040f43bdaabde7ba227a0 (diff) | |
download | uscxml-a874a181add7b292e52140f8c753f663a4cb5a87.zip uscxml-a874a181add7b292e52140f8c753f663a4cb5a87.tar.gz uscxml-a874a181add7b292e52140f8c753f663a4cb5a87.tar.bz2 |
Optional 2nd argument for TypedArray.subarray and more tests
Diffstat (limited to 'src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/dom/JSCUint16Array.cpp')
-rw-r--r-- | src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/dom/JSCUint16Array.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/dom/JSCUint16Array.cpp b/src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/dom/JSCUint16Array.cpp index 3ea7177..3c5a588 100644 --- a/src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/dom/JSCUint16Array.cpp +++ b/src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/dom/JSCUint16Array.cpp @@ -230,6 +230,21 @@ JSValueRef JSCUint16Array::subarrayCallback(JSContextRef ctx, JSObjectRef functi return retObj; + } else if (argumentCount == 1 && + JSValueIsNumber(ctx, arguments[0])) { + long localStart = (long)JSValueToNumber(ctx, arguments[0], exception); + + uscxml::Uint16Array* retVal = new uscxml::Uint16Array(privData->nativeObj->subarray(localStart)); + JSClassRef retClass = JSCUint16Array::getTmpl(); + + struct JSCUint16Array::JSCUint16ArrayPrivate* retPrivData = new JSCUint16Array::JSCUint16ArrayPrivate(); + retPrivData->dom = privData->dom; + retPrivData->nativeObj = retVal; + + JSObjectRef retObj = JSObjectMake(ctx, retClass, retPrivData); + + return retObj; + } JSStringRef exceptionString = JSStringCreateWithUTF8CString("Parameter mismatch while calling subarray"); |