summaryrefslogtreecommitdiffstats
path: root/src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/dom/JSCUint16Array.cpp
diff options
context:
space:
mode:
authorStefan Radomski <radomski@tk.informatik.tu-darmstadt.de>2013-09-02 12:38:13 (GMT)
committerStefan Radomski <radomski@tk.informatik.tu-darmstadt.de>2013-09-02 12:38:13 (GMT)
commita874a181add7b292e52140f8c753f663a4cb5a87 (patch)
tree1b8958ba2abceef58901b3f90f1f05b44321deab /src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/dom/JSCUint16Array.cpp
parent9caba3540b4d64a5277040f43bdaabde7ba227a0 (diff)
downloaduscxml-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.cpp15
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");