File tree Expand file tree Collapse file tree 2 files changed +7
-5
lines changed
src/google/protobuf/compiler/java Expand file tree Collapse file tree 2 files changed +7
-5
lines changed Original file line number Diff line number Diff line change @@ -358,7 +358,11 @@ bool HasRequiredFields(const Descriptor* descriptor);
358358bool IsRealOneof (const FieldDescriptor* descriptor);
359359
360360inline bool HasHasbit (const FieldDescriptor* descriptor) {
361- return internal::cpp::HasHasbit (descriptor);
361+ // TODO(b/241441075) Replace this with internal::cpp::HasHasbit once Elysium
362+ // unblocks this change.
363+ return (FieldDescriptorLegacy (descriptor).has_optional_keyword () ||
364+ descriptor->is_required ()) &&
365+ !descriptor->options ().weak ();
362366}
363367
364368// Whether generate classes expose public PARSER instances.
Original file line number Diff line number Diff line change @@ -322,10 +322,8 @@ void ImmutableMessageFieldGenerator::GenerateBuilderMembers(
322322
323323 " $name$Builder_.mergeFrom(value);\n " ,
324324
325- " if ($name$_ != null) {\n "
326- " $set_has_field_bit_builder$\n "
327- " $on_changed$\n "
328- " }\n "
325+ " $set_has_field_bit_builder$\n "
326+ " $on_changed$\n "
329327 " return this;\n " );
330328
331329 // Message.Builder clearField()
You can’t perform that action at this time.
0 commit comments