diff --git a/build-windows/pEpJSONServerAdapter/pEpJSONServerAdapterLibrary.vcxproj b/build-windows/pEpJSONServerAdapter/pEpJSONServerAdapterLibrary.vcxproj
index e734c01..ced2ff0 100644
--- a/build-windows/pEpJSONServerAdapter/pEpJSONServerAdapterLibrary.vcxproj
+++ b/build-windows/pEpJSONServerAdapter/pEpJSONServerAdapterLibrary.vcxproj
@@ -111,7 +111,6 @@
-
diff --git a/build-windows/pEpJSONServerAdapter/pEpJSONServerAdapterLibrary.vcxproj.filters b/build-windows/pEpJSONServerAdapter/pEpJSONServerAdapterLibrary.vcxproj.filters
index 0d32a65..10e967d 100644
--- a/build-windows/pEpJSONServerAdapter/pEpJSONServerAdapterLibrary.vcxproj.filters
+++ b/build-windows/pEpJSONServerAdapter/pEpJSONServerAdapterLibrary.vcxproj.filters
@@ -105,9 +105,6 @@
Header Files
-
- Header Files
-
Header Files
diff --git a/server/function_map.hh b/server/function_map.hh
index f24e3a1..23985d3 100644
--- a/server/function_map.hh
+++ b/server/function_map.hh
@@ -116,16 +116,32 @@ public:
{
// extract the U'th element of the parameter list
const Element element(parameters[U], ctx, U);
-
+
const js::Value ret = NextHelper::call(fn, ctx, out_parameters, parameters, a2..., element );
if(Element::is_output)
{
js::Value out = element.to_json();
-// std::cerr << "|$ Out #" << U << " : " << js::write(out) << "\n";
- out_parameters.push_back( std::move(out) );
- }else{
-// std::cerr << "|$ Param #" << U << " is not for output.\n";
+ // std::cerr << "|$ Out #" << U << " : " << js::write(out) << "\n";
+ out_parameters.push_back(std::move(out));
}
+ else {
+ // std::cerr << "|$ Param #" << U << " is not for output.\n";
+ }
+#ifdef _MSC_BUILD
+ if (ret.type() == js::array_type) {
+ try {
+ const js::Array ret_ = ret.get_array()[0].get_array();
+#ifndef NDEBUG
+ std::string _ret_ = js::write(ret_);
+#endif
+ return ret_;
+ }
+ catch (std::runtime_error&) {
+ return ret;
+ }
+ }
+ else
+#endif
return ret;
}
};
@@ -187,7 +203,7 @@ public:
out_params.reserve( Helper::nr_of_output_params );
js::Value ret = Helper::call(fn, context, out_params, *p_params);
-
+ std::string _ret = js::value_type_to_string(ret.type());
js::Object rs;
rs.emplace_back("outParams", std::move(out_params));
rs.emplace_back("return", std::move(ret));