Merge pull request #3844 from Nnamdi/CreateUninitializedVector_fix

Stop CreateUninitializedVector returning a pointer to invalid memory.
This commit is contained in:
Wouter van Oortmerssen
2016-04-13 16:14:11 -07:00

View File

@@ -1051,8 +1051,11 @@ FLATBUFFERS_FINAL_CLASS
uint8_t **buf) { uint8_t **buf) {
NotNested(); NotNested();
StartVector(len, elemsize); StartVector(len, elemsize);
*buf = buf_.make_space(len * elemsize); buf_.make_space(len * elemsize);
return EndVector(len); auto vec_start = GetSize();
auto vec_end = EndVector(len);
*buf = buf_.data_at(vec_start);
return vec_end;
} }
/// @brief Specialized version of `CreateVector` for non-copying use cases. /// @brief Specialized version of `CreateVector` for non-copying use cases.