xiaofeng@google.com 13 жил өмнө
parent
commit
2072421124

+ 2 - 1
src/google/protobuf/compiler/cpp/cpp_string_field.cc

@@ -398,7 +398,8 @@ GenerateMergeFromCodedStream(io::Printer* printer) const {
       descriptor_->type() == FieldDescriptor::TYPE_STRING) {
     printer->Print(variables_,
       "::google::protobuf::internal::WireFormat::VerifyUTF8String(\n"
-      "  this->$name$(0).data(), this->$name$(0).length(),\n"
+      "  this->$name$(this->$name$_size() - 1).data(),\n"
+      "  this->$name$(this->$name$_size() - 1).length(),\n"
       "  ::google::protobuf::internal::WireFormat::PARSE);\n");
   }
 }

+ 2 - 1
src/google/protobuf/compiler/plugin.pb.cc

@@ -243,7 +243,8 @@ bool CodeGeneratorRequest::MergePartialFromCodedStream(
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->add_file_to_generate()));
           ::google::protobuf::internal::WireFormat::VerifyUTF8String(
-            this->file_to_generate(0).data(), this->file_to_generate(0).length(),
+            this->file_to_generate(this->file_to_generate_size() - 1).data(),
+            this->file_to_generate(this->file_to_generate_size() - 1).length(),
             ::google::protobuf::internal::WireFormat::PARSE);
         } else {
           goto handle_uninterpreted;

+ 2 - 1
src/google/protobuf/descriptor.pb.cc

@@ -1065,7 +1065,8 @@ bool FileDescriptorProto::MergePartialFromCodedStream(
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->add_dependency()));
           ::google::protobuf::internal::WireFormat::VerifyUTF8String(
-            this->dependency(0).data(), this->dependency(0).length(),
+            this->dependency(this->dependency_size() - 1).data(),
+            this->dependency(this->dependency_size() - 1).length(),
             ::google::protobuf::internal::WireFormat::PARSE);
         } else {
           goto handle_uninterpreted;