From 2079bfe71296d4aa357b461e07c67bdc09d4fa5b Mon Sep 17 00:00:00 2001 From: Roger Meier Date: Tue, 21 Jun 2011 14:09:13 +0000 Subject: [PATCH] THRIFT-1214 JavaScript constructor does not accept object properties Patch: Henrique Mendonca git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1138013 13f79535-47bb-0310-9956-ffa450edef68 --- compiler/cpp/src/generate/t_js_generator.cc | 2 +- lib/js/thrift.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/compiler/cpp/src/generate/t_js_generator.cc b/compiler/cpp/src/generate/t_js_generator.cc index 8daaedf8..7561b12d 100644 --- a/compiler/cpp/src/generate/t_js_generator.cc +++ b/compiler/cpp/src/generate/t_js_generator.cc @@ -560,7 +560,7 @@ void t_js_generator::generate_js_struct_definition(ofstream& out, out << indent() << "if (args) {" << endl; for (m_iter = members.begin(); m_iter != members.end(); ++m_iter) { - out << indent() << indent() << "if (!args." << (*m_iter)->get_name() << ") {" << endl + out << indent() << indent() << "if (args." << (*m_iter)->get_name() << " !== undefined) {" << endl << indent() << indent() << indent() << "this." << (*m_iter)->get_name() << " = args." << (*m_iter)->get_name() << ";" << endl << indent() << indent() << "}" << endl; } diff --git a/lib/js/thrift.js b/lib/js/thrift.js index f4e72359..8b1733e3 100644 --- a/lib/js/thrift.js +++ b/lib/js/thrift.js @@ -460,7 +460,7 @@ Thrift.Protocol.prototype = { map = ',' + map; } - if ( ! isNaN(k)) { k = '"' + k + '"'; } //json "keys" need to be strings + if (! isNaN(k)) { k = '"' + k + '"'; } //json "keys" need to be strings map = k + ':' + v + map; } map = '{' + map; -- 2.17.1