diff options
author | jsdelfino <jsdelfino@13f79535-47bb-0310-9956-ffa450edef68> | 2010-12-24 02:54:39 +0000 |
---|---|---|
committer | jsdelfino <jsdelfino@13f79535-47bb-0310-9956-ffa450edef68> | 2010-12-24 02:54:39 +0000 |
commit | 74aef8947b7b72eca797a2f55d39997cc7af9c25 (patch) | |
tree | 60992d5a27fb7d10e2e6b280cad4dfde9256c043 /sca-cpp/trunk/kernel | |
parent | e5f662ac57fa2c54882245e1c568e0982abab4fb (diff) |
Fix roundtripping of JSON arrays, booleans and numbers, ATOM / RSS feed detection, and support REST-style JSON and XML payloads in server handler and client proxy.
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@1052432 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'sca-cpp/trunk/kernel')
-rw-r--r-- | sca-cpp/trunk/kernel/element.hpp | 4 | ||||
-rw-r--r-- | sca-cpp/trunk/kernel/stream.hpp | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/sca-cpp/trunk/kernel/element.hpp b/sca-cpp/trunk/kernel/element.hpp index c6aa2c44eb..1c443886d1 100644 --- a/sca-cpp/trunk/kernel/element.hpp +++ b/sca-cpp/trunk/kernel/element.hpp @@ -100,7 +100,7 @@ const value elementHasValue(const list<value>& l) { if (isSymbol(car(r))) return false; if(isList(car(r)) && !isNil((list<value>)car(r)) && isSymbol(car<value>(car(r)))) - return false; + return false; return true; } @@ -195,7 +195,7 @@ const value valueToElement(const value& t) { // Convert a name value pair if (isList(t) && !isNil((list<value>)t) && isSymbol(car<value>(t))) { const value n = car<value>(t); - const value v = cadr<value>(t); + const value v = isNil(cdr<value>(t))? value() : cadr<value>(t); // Convert a single value to an attribute or an element if (!isList(v)) { diff --git a/sca-cpp/trunk/kernel/stream.hpp b/sca-cpp/trunk/kernel/stream.hpp index 53fb5e9ff7..2a27f5a948 100644 --- a/sca-cpp/trunk/kernel/stream.hpp +++ b/sca-cpp/trunk/kernel/stream.hpp @@ -82,7 +82,7 @@ ostream& operator<<(ostream& os, const long unsigned int v) { } ostream& operator<<(ostream& os, const double v) { - return os.vprintf("%g", v); + return os.vprintf("%.10g", v); } ostream& operator<<(ostream& os, const void* v) { |