mirror of https://gitee.com/bigwinds/arangodb
fixed memory issues
This commit is contained in:
parent
85cba473ba
commit
b642b48603
|
@ -299,11 +299,15 @@ ProgramOptions::~ProgramOptions () {
|
||||||
}
|
}
|
||||||
|
|
||||||
for (map<string, TRI_vector_string_t*>::iterator i = _valuesVector.begin(); i != _valuesVector.end(); ++i) {
|
for (map<string, TRI_vector_string_t*>::iterator i = _valuesVector.begin(); i != _valuesVector.end(); ++i) {
|
||||||
TRI_FreeVectorString(TRI_CORE_MEM_ZONE, i->second);
|
if ((*i).second != 0) {
|
||||||
|
TRI_FreeVectorString(TRI_CORE_MEM_ZONE, (*i).second);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for (map<string, bool*>::iterator i = _valuesBool.begin(); i != _valuesBool.end(); ++i) {
|
for (map<string, bool*>::iterator i = _valuesBool.begin(); i != _valuesBool.end(); ++i) {
|
||||||
TRI_Free(TRI_CORE_MEM_ZONE, i->second);
|
if ((*i).second != 0) {
|
||||||
|
TRI_Free(TRI_CORE_MEM_ZONE, (*i).second);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -203,7 +203,7 @@ int TRI_ParseCsvString2 (TRI_csv_parser_t* parser, char const* line, size_t leng
|
||||||
parser->_nMemmove++;
|
parser->_nMemmove++;
|
||||||
}
|
}
|
||||||
|
|
||||||
// rellay not enough room
|
// really not enough room
|
||||||
else {
|
else {
|
||||||
l2 = parser->_stop - parser->_start;
|
l2 = parser->_stop - parser->_start;
|
||||||
l3 = parser->_end - parser->_begin + length;
|
l3 = parser->_end - parser->_begin + length;
|
||||||
|
@ -363,7 +363,7 @@ int TRI_ParseCsvString2 (TRI_csv_parser_t* parser, char const* line, size_t leng
|
||||||
if (ptr < parser->_stop) {
|
if (ptr < parser->_stop) {
|
||||||
|
|
||||||
// found separator
|
// found separator
|
||||||
if (strstr(ptr, parser->_separator) == ptr) {
|
if (ptr + parser->_separatorLength < parser->_stop && memcmp(ptr, parser->_separator, parser->_separatorLength) == 0) {
|
||||||
*qtr = '\0';
|
*qtr = '\0';
|
||||||
|
|
||||||
parser->add(parser, parser->_start, parser->_row, parser->_column, false);
|
parser->add(parser, parser->_start, parser->_row, parser->_column, false);
|
||||||
|
@ -417,7 +417,7 @@ int TRI_ParseCsvString2 (TRI_csv_parser_t* parser, char const* line, size_t leng
|
||||||
}
|
}
|
||||||
|
|
||||||
// found separator
|
// found separator
|
||||||
if (strstr(ptr, parser->_separator) == ptr) {
|
if (ptr + parser->_separatorLength < parser->_stop && memcmp(ptr, parser->_separator, parser->_separatorLength) == 0) {
|
||||||
*qtr = '\0';
|
*qtr = '\0';
|
||||||
|
|
||||||
parser->add(parser, parser->_start, parser->_row, parser->_column, true);
|
parser->add(parser, parser->_start, parser->_row, parser->_column, true);
|
||||||
|
|
Loading…
Reference in New Issue