summaryrefslogtreecommitdiffstats
path: root/src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/JSCDataModel.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/JSCDataModel.cpp')
-rw-r--r--src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/JSCDataModel.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/JSCDataModel.cpp b/src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/JSCDataModel.cpp
index 9827b91..ad2952a 100644
--- a/src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/JSCDataModel.cpp
+++ b/src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/JSCDataModel.cpp
@@ -286,6 +286,14 @@ Data JSCDataModel::getStringAsData(const std::string& content) {
JSValueRef JSCDataModel::getDataAsValue(const Data& data) {
JSValueRef exception = NULL;
+ if (data.node) {
+ JSCNode::JSCNodePrivate* privData = new JSCNode::JSCNodePrivate();
+ privData->nativeObj = new Node<std::string>(data.node);
+ privData->dom = _dom;
+
+ JSObjectRef value = JSObjectMake(_ctx, JSCNode::getTmpl(), privData);
+ return value;
+ }
if (data.compound.size() > 0) {
JSObjectRef value = JSObjectMake(_ctx, 0, 0);
std::map<std::string, Data>::const_iterator compoundIter = data.compound.begin();