mirror of
https://github.com/bitcoin/bitcoin.git
synced 2024-11-20 02:25:40 +01:00
fixed runaway memory alloc bug on 64-bit in ParseString found by sirius-m
This commit is contained in:
parent
9a33582204
commit
91e615bfec
14
util.cpp
14
util.cpp
@ -282,15 +282,21 @@ bool error(const char* format, ...)
|
||||
|
||||
void ParseString(const string& str, char c, vector<string>& v)
|
||||
{
|
||||
unsigned int i1 = 0;
|
||||
unsigned int i2;
|
||||
do
|
||||
if (str.empty())
|
||||
return;
|
||||
string::size_type i1 = 0;
|
||||
string::size_type i2;
|
||||
loop
|
||||
{
|
||||
i2 = str.find(c, i1);
|
||||
if (i2 == str.npos)
|
||||
{
|
||||
v.push_back(str.substr(i1));
|
||||
return;
|
||||
}
|
||||
v.push_back(str.substr(i1, i2-i1));
|
||||
i1 = i2+1;
|
||||
}
|
||||
while (i2 != str.npos);
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user