From 460091fb0b2ff114cc741372f15bb43b702ea3b1 Mon Sep 17 00:00:00 2001 From: Daniel Wilhelm Date: Fri, 18 Apr 2014 17:24:35 +0200 Subject: 5.16 --- zen/serialize.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'zen/serialize.h') diff --git a/zen/serialize.h b/zen/serialize.h index a9238359..982165f9 100644 --- a/zen/serialize.h +++ b/zen/serialize.h @@ -86,6 +86,7 @@ struct BinStreamIn //throw UnexpectedEndOfStreamError const void* requestRead(size_t len) //throw UnexpectedEndOfStreamError { + if (len == 0) return nullptr; //don't allow for possibility to access empty buffer if (pos + len > buffer.size()) throw UnexpectedEndOfStreamError(); size_t oldPos = pos; @@ -102,8 +103,9 @@ struct BinStreamOut { void* requestWrite(size_t len) { - size_t oldSize = buffer.size(); - buffer.resize(buffer.size() + len); + if (len == 0) return nullptr; //don't allow for possibility to access empty buffer + const size_t oldSize = buffer.size(); + buffer.resize(oldSize + len); return &*buffer.begin() + oldSize; } -- cgit