diff --git a/hoot-core/src/main/cpp/hoot/core/visitors/RemoveElementsVisitor.cpp b/hoot-core/src/main/cpp/hoot/core/visitors/RemoveElementsVisitor.cpp
index d49d942..5e96cd8 100644
--- a/hoot-core/src/main/cpp/hoot/core/visitors/RemoveElementsVisitor.cpp
+++ b/hoot-core/src/main/cpp/hoot/core/visitors/RemoveElementsVisitor.cpp
@@ -45,7 +45,8 @@ RemoveElementsVisitor::RemoveElementsVisitor(bool negateCriteria) :
_recursive(false),
_count(0),
_negateCriteria(negateCriteria),
-_chainCriteria(false)
+_chainCriteria(false),
+_startElementCount(0)
{
}
@@ -55,7 +56,6 @@ void RemoveElementsVisitor::setConfiguration(const Settings& conf)
_negateCriteria = configOptions.getElementCriterionNegate();
-
const QStringList critNames = configOptions.getRemoveElementsVisitorElementCriteria();
LOG_VART(critNames);
if (critNames.size() > 0)
@@ -88,6 +88,7 @@ void RemoveElementsVisitor::setConfiguration(const Settings& conf)
void RemoveElementsVisitor::setOsmMap(OsmMap* map)
{
_map = map;
+ _startElementCount = _map->getElementCount();
for (std::vector<ElementCriterionPtr>::const_iterator it = _criteria.begin();
it != _criteria.end(); ++it)
@@ -111,6 +112,7 @@ void RemoveElementsVisitor::addCriterion(const ElementCriterionPtr& crit)
{
_criteria.push_back(ElementCriterionPtr(crit));
}
+ LOG_VART(_criteria.size());
}
bool RemoveElementsVisitor::_criteriaSatisfied(const ConstElementPtr& e) const
@@ -149,7 +151,6 @@ bool RemoveElementsVisitor::_criteriaSatisfied(const ConstElementPtr& e) const
void RemoveElementsVisitor::visit(const ElementPtr& e)
{
- LOG_VART(_criteria.size());
if (_criteria.size() == 0)
{
throw IllegalArgumentException("No criteria specified for RemoveElementsVisitor.");