summaryrefslogtreecommitdiff
path: root/plugins/Db3x_mmap/src/dbcontacts.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/Db3x_mmap/src/dbcontacts.cpp')
-rw-r--r--plugins/Db3x_mmap/src/dbcontacts.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/plugins/Db3x_mmap/src/dbcontacts.cpp b/plugins/Db3x_mmap/src/dbcontacts.cpp
index f2ed1da4f1..c497b10214 100644
--- a/plugins/Db3x_mmap/src/dbcontacts.cpp
+++ b/plugins/Db3x_mmap/src/dbcontacts.cpp
@@ -400,9 +400,13 @@ void CDb3Mmap::FillContacts()
if (p->signature != DBCONTACT_SIGNATURE)
break;
- DWORD dwContactID = p->dwContactID;
- if (dwContactID >= m_dwMaxContactId)
- m_dwMaxContactId = dwContactID + 1;
+ DWORD dwContactID;
+ if (m_dbHeader.version >= DB_095_VERSION) {
+ dwContactID = p->dwContactID;
+ if (dwContactID > m_dwMaxContactId)
+ m_dwMaxContactId = dwContactID + 1;
+ }
+ else dwContactID = m_dwMaxContactId++;
DBCachedContact *cc = m_cache->AddContactToCache(dwContactID);
cc->dwDriverData = dwOffset;