When we call statement execution for "PRAGMA incremental_vacuum(1024);"

it fails with null std iterator exception. It happens because variable
"extracts" is empty and construction "*extracts.begin()" is invalid.

Signed-off-by: FrancisANDRE <zosrothko@orange.fr>
This commit is contained in:
FrancisANDRE 2015-11-17 21:12:23 +01:00
parent 3ea2bed26d
commit 629d2f12ba

View File

@ -274,6 +274,9 @@ std::size_t SQLiteStatementImpl::next()
_stepCalled = false;
if (_affectedRowCount == POCO_SQLITE_INV_ROW_CNT) _affectedRowCount = 0;
if (extracts.size())
//_affectedRowCount += (*extracts.begin())->numOfRowsHandled();
if (extracts.size())
_affectedRowCount += (*extracts.begin())->numOfRowsHandled();
else
@ -281,6 +284,11 @@ std::size_t SQLiteStatementImpl::next()
_stepCalled = true;
_nextResponse = SQLITE_DONE;
}
else
{
_stepCalled = true;
_nextResponse = SQLITE_DONE;
}
}
else if (SQLITE_DONE == _nextResponse)