THRIFT-5014: Do Direct Comparison on Raw Values Instead of Objects
Client: java
This closes #1935.
diff --git a/compiler/cpp/src/thrift/generate/t_java_generator.cc b/compiler/cpp/src/thrift/generate/t_java_generator.cc
index 581e1cf..1805585 100644
--- a/compiler/cpp/src/thrift/generate/t_java_generator.cc
+++ b/compiler/cpp/src/thrift/generate/t_java_generator.cc
@@ -2056,8 +2056,8 @@
vector<t_field*>::const_iterator m_iter;
for (m_iter = members.begin(); m_iter != members.end(); ++m_iter) {
t_field* field = *m_iter;
- indent(out) << "lastComparison = java.lang.Boolean.valueOf(" << generate_isset_check(field)
- << ").compareTo(other." << generate_isset_check(field) << ");" << endl;
+ indent(out) << "lastComparison = java.lang.Boolean.compare(" << generate_isset_check(field)
+ << ", other." << generate_isset_check(field) << ");" << endl;
indent(out) << "if (lastComparison != 0) {" << endl;
indent(out) << " return lastComparison;" << endl;
indent(out) << "}" << endl;