From c842fa175cdda0331567ea6f06e7084ceb51d260 Mon Sep 17 00:00:00 2001 From: George Hazan Date: Tue, 13 Jan 2015 21:33:15 +0000 Subject: well, everything works but events git-svn-id: http://svn.miranda-ng.org/main/trunk@11850 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- plugins/Dbx_mdb/src/dbmodulechain.cpp | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'plugins/Dbx_mdb/src/dbmodulechain.cpp') diff --git a/plugins/Dbx_mdb/src/dbmodulechain.cpp b/plugins/Dbx_mdb/src/dbmodulechain.cpp index 4643a2d295..a54d7ab2f9 100644 --- a/plugins/Dbx_mdb/src/dbmodulechain.cpp +++ b/plugins/Dbx_mdb/src/dbmodulechain.cpp @@ -103,10 +103,13 @@ DWORD CDbxMdb::GetModuleNameOfs(const char *szName) MDB_val key = { sizeof(int), &newIdx }, data = { sizeof(DBModuleName) + nameLen, pmod }; - txn_lock trnlck(m_pMdbEnv); - mdb_open(trnlck, "modules", MDB_INTEGERKEY, &m_dbModules); - mdb_put(trnlck, m_dbModules, &key, &data, 0); - trnlck.commit(); + for (;; Remap()) { + txn_lock trnlck(m_pMdbEnv); + mdb_open(trnlck, "modules", MDB_INTEGERKEY, &m_dbModules); + mdb_put(trnlck, m_dbModules, &key, &data, 0); + if (trnlck.commit()) + break; + } // add to cache char *mod = (char*)HeapAlloc(m_hModHeap, 0, nameLen + 1); -- cgit v1.2.3