Fixed incorrect generated code on convenient vector constructors.

Change-Id: Ib283eade157a436e0f3ca0e68d74e7dc6c51c65b
This commit is contained in:
Wouter van Oortmerssen
2016-08-08 12:16:10 -07:00
parent d70f5ac6b0
commit 3eebba789f
3 changed files with 10 additions and 9 deletions

View File

@@ -927,15 +927,16 @@ class CppGenerator : public BaseGenerator {
auto &field = **it;
if (!field.deprecated) {
if (field.value.type.base_type == BASE_TYPE_STRING) {
code += ", " + field.name + " ? 0 : ";
code += "_fbb.CreateString(" + field.name + ")";
code += ", " + field.name + " ? ";
code += "_fbb.CreateString(" + field.name + ") : 0";
} else if (field.value.type.base_type == BASE_TYPE_VECTOR) {
code += ", " + field.name + " ? 0 : ";
code += ", " + field.name + " ? ";
code += "_fbb.CreateVector<";
code += GenTypeWire(field.value.type.VectorType(), "", false);
code += ">(*" + field.name + ")";
} else
code += ">(*" + field.name + ") : 0";
} else {
code += ", " + field.name;
}
}
}
code += ");\n}\n\n";