You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@thrift.apache.org by ro...@apache.org on 2011/06/21 16:09:14 UTC

svn commit: r1138013 - in /thrift/trunk: compiler/cpp/src/generate/t_js_generator.cc lib/js/thrift.js

Author: roger
Date: Tue Jun 21 14:09:13 2011
New Revision: 1138013

URL: http://svn.apache.org/viewvc?rev=1138013&view=rev
Log:
THRIFT-1214 JavaScript constructor does not accept object properties
Patch: Henrique Mendonca

Modified:
    thrift/trunk/compiler/cpp/src/generate/t_js_generator.cc
    thrift/trunk/lib/js/thrift.js

Modified: thrift/trunk/compiler/cpp/src/generate/t_js_generator.cc
URL: http://svn.apache.org/viewvc/thrift/trunk/compiler/cpp/src/generate/t_js_generator.cc?rev=1138013&r1=1138012&r2=1138013&view=diff
==============================================================================
--- thrift/trunk/compiler/cpp/src/generate/t_js_generator.cc (original)
+++ thrift/trunk/compiler/cpp/src/generate/t_js_generator.cc Tue Jun 21 14:09:13 2011
@@ -560,7 +560,7 @@ void t_js_generator::generate_js_struct_
     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;
     }

Modified: thrift/trunk/lib/js/thrift.js
URL: http://svn.apache.org/viewvc/thrift/trunk/lib/js/thrift.js?rev=1138013&r1=1138012&r2=1138013&view=diff
==============================================================================
--- thrift/trunk/lib/js/thrift.js (original)
+++ thrift/trunk/lib/js/thrift.js Tue Jun 21 14:09:13 2011
@@ -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;