From 9de08611041111f2c200185b8a2e51cc7a9c747e Mon Sep 17 00:00:00 2001 From: vglavnyy <31897320+vglavnyy@users.noreply.github.com> Date: Fri, 9 Feb 2018 06:15:17 +0700 Subject: [PATCH] Fix vector_data failure under debug (#4606) --- include/flatbuffers/stl_emulation.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/flatbuffers/stl_emulation.h b/include/flatbuffers/stl_emulation.h index 3cb3c76d6..7e7e978a4 100644 --- a/include/flatbuffers/stl_emulation.h +++ b/include/flatbuffers/stl_emulation.h @@ -51,12 +51,12 @@ inline char string_back(const std::string &value) { template inline T *vector_data(std::vector &vector) { // In some debug environments, operator[] does bounds checking, so &vector[0] // can't be used. - return &(*vector.begin()); + return vector.empty() ? nullptr : &vector[0]; } template inline const T *vector_data( const std::vector &vector) { - return &(*vector.begin()); + return vector.empty() ? nullptr : &vector[0]; } template