diff options
author | Brian Duff <bduff@google.com> | 2015-03-20 21:12:11 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2015-03-20 21:12:15 +0000 |
commit | 00c7607ce445af504021447068d6237ba8100716 (patch) | |
tree | c4a4df209a215a3678d75e8968dc837e1a44a2ff /src | |
parent | 51e32ffaa5e2ea3528a58db5d34e8a0dc0a9ac93 (diff) | |
parent | 0e2b47592a5af00251b2478542374a0f428ae4ee (diff) | |
download | external_protobuf-00c7607ce445af504021447068d6237ba8100716.zip external_protobuf-00c7607ce445af504021447068d6237ba8100716.tar.gz external_protobuf-00c7607ce445af504021447068d6237ba8100716.tar.bz2 |
Merge "Inline unknownFieldData{Equals,HashCode} to generated code."gradle_1.2.0-beta1
Diffstat (limited to 'src')
-rw-r--r-- | src/google/protobuf/compiler/javanano/javanano_message.cc | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/google/protobuf/compiler/javanano/javanano_message.cc b/src/google/protobuf/compiler/javanano/javanano_message.cc index dcfb870..4026031 100644 --- a/src/google/protobuf/compiler/javanano/javanano_message.cc +++ b/src/google/protobuf/compiler/javanano/javanano_message.cc @@ -552,7 +552,11 @@ void MessageGenerator::GenerateEquals(io::Printer* printer) { if (params_.store_unknown_fields()) { printer->Print( - "return unknownFieldDataEquals(other);\n"); + "if (unknownFieldData == null || unknownFieldData.isEmpty()) {\n" + " return other.unknownFieldData == null || other.unknownFieldData.isEmpty();\n" + "} else {\n" + " return unknownFieldData.equals(other.unknownFieldData);\n" + "}"); } else { printer->Print( "return true;\n"); @@ -582,7 +586,9 @@ void MessageGenerator::GenerateHashCode(io::Printer* printer) { if (params_.store_unknown_fields()) { printer->Print( - "result = 31 * result + unknownFieldDataHashCode();\n"); + "result = 31 * result + \n" + " (unknownFieldData == null || unknownFieldData.isEmpty() ? 0 : \n" + " unknownFieldData.hashCode());\n"); } printer->Print("return result;\n"); |