From 58703a4f4cd3fcfb79b54692bdd2ac3b6c90565f Mon Sep 17 00:00:00 2001
From: Wouter van Oortmerssen <wvo@google.com>
Date: Mon, 23 Jun 2014 10:55:04 -0700
Subject: [PATCH] Fixed bug that caused creating 0-length arrays to crash

Change-Id: Ibb0da5b57a2f63804c071863d8c60b845e0aece7
Tested: on Windows
---
 include/flatbuffers/flatbuffers.h | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/include/flatbuffers/flatbuffers.h b/include/flatbuffers/flatbuffers.h
index a893a4be..47acdf3d 100644
--- a/include/flatbuffers/flatbuffers.h
+++ b/include/flatbuffers/flatbuffers.h
@@ -498,10 +498,9 @@ class FlatBufferBuilder {
   template<typename T> Offset<Vector<T>> CreateVector(const T *v, size_t len) {
     NotNested();
     StartVector(len, sizeof(T));
-    auto i = len;
-    do {
+    for (auto i = len; i > 0; ) {
       PushElement(v[--i]);
-    } while (i);
+    }
     return Offset<Vector<T>>(EndVector(len));
   }
 
-- 
GitLab