diff --git a/protob/pb2py b/protob/pb2py index 933fb8164..6323d7f37 100755 --- a/protob/pb2py +++ b/protob/pb2py @@ -116,6 +116,8 @@ class Descriptor: for file in self.files: self.messages += file.message_type self.enums += file.enum_type + for message in file.message_type: + self._nested_types_from_message(message) if not self.messages and not self.enums: raise RuntimeError("No messages and no enums found.") @@ -125,6 +127,12 @@ class Descriptor: self.out_dir = None + def _nested_types_from_message(self, message): + self.messages += message.nested_type + self.enums += message.enum_type + for nested in message.nested_type: + self._nested_types_from_message(nested) + def find_message_types(self, message_type): message_types = {} try: