Skip to content

Commit 912eb8b

Browse files
authored
Merge pull request #9121 from haberman/rubyfix
Fix for descriptor_pb.rb: google/protobuf should be required first.
2 parents 51cb7f9 + bb5a268 commit 912eb8b

File tree

3 files changed

+11
-6
lines changed

3 files changed

+11
-6
lines changed

src/google/protobuf/compiler/ruby/ruby_generated_code_pb.rb

Lines changed: 2 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/google/protobuf/compiler/ruby/ruby_generated_code_proto2_pb.rb

Lines changed: 2 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/google/protobuf/compiler/ruby/ruby_generator.cc

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -467,8 +467,6 @@ void EndPackageModules(int levels, io::Printer* printer) {
467467

468468
bool GenerateDslDescriptor(const FileDescriptor* file, io::Printer* printer,
469469
std::string* error) {
470-
printer->Print(
471-
"require 'google/protobuf'\n\n");
472470
printer->Print("Google::Protobuf::DescriptorPool.generated_pool.build do\n");
473471
printer->Indent();
474472
printer->Print("add_file(\"$filename$\", :syntax => :$syntax$) do\n",
@@ -509,8 +507,13 @@ bool GenerateFile(const FileDescriptor* file, io::Printer* printer,
509507
"\n",
510508
"filename", file->name());
511509

512-
for (int i = 0; i < file->dependency_count(); i++) {
513-
printer->Print("require '$name$'\n", "name", GetRequireName(file->dependency(i)->name()));
510+
printer->Print("require 'google/protobuf'\n\n");
511+
512+
if (file->dependency_count() != 0) {
513+
for (int i = 0; i < file->dependency_count(); i++) {
514+
printer->Print("require '$name$'\n", "name", GetRequireName(file->dependency(i)->name()));
515+
}
516+
printer->Print("\n");
514517
}
515518

516519
// TODO: Remove this when ruby supports extensions for proto2 syntax.

0 commit comments

Comments
 (0)