diff --git a/src/zipr.cpp b/src/zipr.cpp
index b8de2cdebf6875f5e21c33bf8e56007186a1e770..4110a854a535e06d2eb46925742fe2e7127f58e4 100644
--- a/src/zipr.cpp
+++ b/src/zipr.cpp
@@ -4284,10 +4284,13 @@ void ZiprImpl_t::UpdateScoops()
 			m_firp->GetAddresses().erase(scoop->GetStart());
 			m_firp->GetAddresses().erase(scoop->GetEnd());
 
-			// erase and move to next element.
-			it=m_firp->GetDataScoops().erase(it);
+			if (m_verbose)
+				cout << "Removing an empty scoop (" << scoop->GetName() << ")." << endl;
+
+			m_firp->GetDataScoops().erase(*it);
+			it = m_zipr_scoops.erase(it);
 
-			// remove addresses and scoop
+			// Delete addresses and then the scoop itself.
 			delete scoop->GetStart();
 			delete scoop->GetEnd();
 			delete scoop;