Fix generator error with OneOfs
authorPetteri Aimonen <jpa@git.mail.kapsi.fi>
Wed, 7 Jan 2015 16:59:44 +0000 (18:59 +0200)
committerPetteri Aimonen <jpa@git.mail.kapsi.fi>
Wed, 7 Jan 2015 16:59:44 +0000 (18:59 +0200)
generator/nanopb_generator.py

index 2a9ae00..3f309a4 100755 (executable)
@@ -582,7 +582,8 @@ class ExtensionField(Field):
 # ---------------------------------------------------------------------------
 
 class OneOf(Field):
-    def __init__(self, oneof_desc):
+    def __init__(self, struct_name, oneof_desc):
+        self.struct_name = struct_name
         self.name = oneof_desc.name
         self.ctype = 'union'
         self.fields = []
@@ -655,7 +656,7 @@ class Message:
 
         if hasattr(desc, 'oneof_decl'):
             for f in desc.oneof_decl:
-                oneof = OneOf(f)
+                oneof = OneOf(self.name, f)
                 self.oneofs.append(oneof)
                 self.fields.append(oneof)