diff options
Diffstat (limited to 'serialize.h')
-rw-r--r-- | serialize.h | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/serialize.h b/serialize.h index c47dddc87c..2292651e83 100644 --- a/serialize.h +++ b/serialize.h @@ -19,7 +19,7 @@ class CScript; class CDataStream;
class CAutoFile;
-static const int VERSION = 208;
+static const int VERSION = 209;
static const char* pszSubVer = ".0";
@@ -809,6 +809,18 @@ public: vch.insert(it, first, last);
}
+ void insert(iterator it, vector<char>::const_iterator first, vector<char>::const_iterator last)
+ {
+ if (it == vch.begin() + nReadPos && last - first <= nReadPos)
+ {
+ // special case for inserting at the front when there's room
+ nReadPos -= (last - first);
+ memcpy(&vch[nReadPos], &first[0], last - first);
+ }
+ else
+ vch.insert(it, first, last);
+ }
+
#if !defined(_MSC_VER) || _MSC_VER >= 1300
void insert(iterator it, const char* first, const char* last)
{
|