Index: third_party/protobuf/src/google/protobuf/compiler/java/java_message_builder.cc |
diff --git a/third_party/protobuf/src/google/protobuf/compiler/java/java_message_builder.cc b/third_party/protobuf/src/google/protobuf/compiler/java/java_message_builder.cc |
index 726941197635fb027b1ee3de7f99fac6256b9e63..b3e9e986c47829f11768c5603c5eef35c65417a7 100644 |
--- a/third_party/protobuf/src/google/protobuf/compiler/java/java_message_builder.cc |
+++ b/third_party/protobuf/src/google/protobuf/compiler/java/java_message_builder.cc |
@@ -81,8 +81,9 @@ MessageBuilderGenerator::MessageBuilderGenerator( |
: descriptor_(descriptor), context_(context), |
name_resolver_(context->GetNameResolver()), |
field_generators_(descriptor, context_) { |
- GOOGLE_CHECK_NE( |
- FileOptions::LITE_RUNTIME, descriptor->file()->options().optimize_for()); |
+ GOOGLE_CHECK(HasDescriptorMethods(descriptor->file(), context->EnforceLite())) |
+ << "Generator factory error: A non-lite message generator is used to " |
+ "generate lite messages."; |
} |
MessageBuilderGenerator::~MessageBuilderGenerator() {} |
@@ -113,7 +114,7 @@ Generate(io::Printer* printer) { |
GenerateDescriptorMethods(printer); |
GenerateCommonBuilderMethods(printer); |
- if (HasGeneratedMethods(descriptor_)) { |
+ if (context_->HasGeneratedMethods(descriptor_)) { |
GenerateIsInitialized(printer); |
GenerateBuilderParsingMethods(printer); |
} |
@@ -134,7 +135,7 @@ Generate(io::Printer* printer) { |
printer->Print(vars, |
"public $oneof_capitalized_name$Case\n" |
" get$oneof_capitalized_name$Case() {\n" |
- " return $oneof_capitalized_name$Case.valueOf(\n" |
+ " return $oneof_capitalized_name$Case.forNumber(\n" |
" $oneof_name$Case_);\n" |
"}\n" |
"\n" |
@@ -439,7 +440,7 @@ GenerateCommonBuilderMethods(io::Printer* printer) { |
// ----------------------------------------------------------------- |
- if (HasGeneratedMethods(descriptor_)) { |
+ if (context_->HasGeneratedMethods(descriptor_)) { |
printer->Print( |
"public Builder mergeFrom(com.google.protobuf.Message other) {\n" |
" if (other instanceof $classname$) {\n" |
@@ -538,7 +539,7 @@ GenerateBuilderParsingMethods(io::Printer* printer) { |
" parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);\n" |
" } catch (com.google.protobuf.InvalidProtocolBufferException e) {\n" |
" parsedMessage = ($classname$) e.getUnfinishedMessage();\n" |
- " throw e;\n" |
+ " throw e.unwrapIOException();\n" |
" } finally {\n" |
" if (parsedMessage != null) {\n" |
" mergeFrom(parsedMessage);\n" |