Author: dreiss
Date: Tue Oct 7 21:49:25 2008
New Revision: 702697
URL: http://svn.apache.org/viewvc?rev=702697&view=rev
Log:
THRIFT-152. java: Set isset appropriately in structure constructors
Modified:
incubator/thrift/trunk/compiler/cpp/src/generate/t_java_generator.cc
Modified: incubator/thrift/trunk/compiler/cpp/src/generate/t_java_generator.cc
URL:
http://svn.apache.org/viewvc/incubator/thrift/trunk/compiler/cpp/src/generate/t_java_generator.cc?rev=702697&r1=702696&r2=702697&view=diff
==============================================================================
--- incubator/thrift/trunk/compiler/cpp/src/generate/t_java_generator.cc
(original)
+++ incubator/thrift/trunk/compiler/cpp/src/generate/t_java_generator.cc Tue
Oct 7 21:49:25 2008
@@ -635,7 +635,13 @@
for (m_iter = members.begin(); m_iter != members.end(); ++m_iter) {
indent(out) << "this." << (*m_iter)->get_name() << " = " <<
(*m_iter)->get_name() << ";" << endl;
- indent(out) << "this.__isset." << (*m_iter)->get_name() << " = true;" <<
endl;
+ indent(out) << "this.__isset." << (*m_iter)->get_name() << " = ";
+ if (type_can_be_null((*m_iter)->get_type())) {
+ out << "(" << (*m_iter)->get_name() << " != null)";
+ } else {
+ out << "true";
+ }
+ out << ";" << endl;
}
indent_down();
indent(out) << "}" << endl << endl;