From 887c0ce6c53bcd25472ae5de4124bf56dd0a66f8 Mon Sep 17 00:00:00 2001 From: George Hazan Date: Fri, 19 Jan 2018 20:15:08 +0300 Subject: related to #1102 - fixes lost Clist Modern skin --- plugins/Dbx_mdbx/src/dbsettings.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/plugins/Dbx_mdbx/src/dbsettings.cpp b/plugins/Dbx_mdbx/src/dbsettings.cpp index 1021c3d045..567f02b89e 100644 --- a/plugins/Dbx_mdbx/src/dbsettings.cpp +++ b/plugins/Dbx_mdbx/src/dbsettings.cpp @@ -384,14 +384,19 @@ STDMETHODIMP_(BOOL) CDbxMDBX::EnumContactSettings(MCONTACT hContact, DBSETTINGEN txn_ptr_ro txn(m_txn); cursor_ptr_ro cursor(m_curSettings); + LIST arKeys(100); MDBX_val key = { &keyVal, sizeof(keyVal) }, data; for (int res = mdbx_cursor_get(cursor, &key, &data, MDBX_SET_RANGE); res == MDBX_SUCCESS; res = mdbx_cursor_get(cursor, &key, &data, MDBX_NEXT)) { const DBSettingKey *pKey = (const DBSettingKey*)key.iov_base; if (pKey->hContact != hContact || pKey->dwModuleId != keyVal.dwModuleId) break; - result = pfnEnumProc(pKey->szSettingName, param); + + arKeys.insert((char*)pKey->szSettingName); } + for (int i=0; i < arKeys.getCount(); i++) + result = pfnEnumProc(arKeys[i], param); + return result; } -- cgit v1.2.3