Fixed warning (cleanup of unused words before clearing the memory... saving time to dB )

git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@677 f169173b-cf89-36c8-b27e-44dbe73f0c83
This commit is contained in:
matlabbe
2012-12-12 18:40:54 +00:00
parent bb2fbc67e0
commit 8684b02a72
2 changed files with 8 additions and 9 deletions

View File

@@ -813,15 +813,11 @@ void Memory::clear()
{
ULOGGER_DEBUG("");
this->cleanUnusedWords();
if(_dbDriver)
{
int size = 0;
if(_vwd)
{
size = _vwd->getVisualWords().size();
}
_dbDriver->addStatisticsAfterRunSurf(size);
_dbDriver->addStatisticsAfterRunSurf(_vwd->getVisualWords().size());
}
if(_dbDriver)

View File

@@ -386,8 +386,11 @@ void VWDictionary::addWordRef(int wordId, int signatureId)
if(!vw)
{
vw = uValue(_unusedWords, wordId, vw);
_visualWords.insert(std::pair<int, VisualWord*>(vw->id(), vw));
_unusedWords.erase(vw->id());
if(vw)
{
_visualWords.insert(std::pair<int, VisualWord*>(vw->id(), vw));
_unusedWords.erase(vw->id());
}
}
if(vw)
{