summaryrefslogtreecommitdiff
path: root/plugins/FavContacts/src/contact_cache.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/FavContacts/src/contact_cache.cpp')
-rw-r--r--plugins/FavContacts/src/contact_cache.cpp10
1 files changed, 2 insertions, 8 deletions
diff --git a/plugins/FavContacts/src/contact_cache.cpp b/plugins/FavContacts/src/contact_cache.cpp
index 1167d98f0d..0cfc3b4757 100644
--- a/plugins/FavContacts/src/contact_cache.cpp
+++ b/plugins/FavContacts/src/contact_cache.cpp
@@ -81,16 +81,12 @@ void CContactCache::Rebuild()
unsigned long timestamp = time(NULL);
m_lastUpdate = time(NULL);
- HANDLE hContact = db_find_first();
- while (hContact)
- {
+ for (HANDLE hContact = db_find_first(); hContact; hContact = db_find_next(hContact)) {
TContactInfo *info = new TContactInfo;
info->hContact = hContact;
info->rate = 0;
- HANDLE hEvent = db_event_last(hContact);
- while (hEvent)
- {
+ for (HANDLE hEvent = db_event_last(hContact); hEvent; hEvent = db_event_prev(hEvent)) {
DBEVENTINFO dbei = { sizeof(dbei) };
if (!db_event_get(hEvent, &dbei)) {
if (float weight = GetEventWeight(timestamp - dbei.timestamp))
@@ -100,11 +96,9 @@ void CContactCache::Rebuild()
}
else break;
}
- hEvent = db_event_prev(hEvent);
}
m_cache.insert(info);
- hContact = db_find_next(hContact);
}
}