From e952f242f6314048ec98b60c4d53b0b9c00ab4c0 Mon Sep 17 00:00:00 2001 From: George Hazan Date: Thu, 29 Dec 2022 15:33:47 +0300 Subject: ancient perversion with DBCONTACTWRITESETTING removed --- src/mir_app/src/MDatabaseCommon.cpp | 22 ++++++++++------------ src/mir_app/src/mir_app.def | 2 +- src/mir_app/src/mir_app64.def | 2 +- 3 files changed, 12 insertions(+), 14 deletions(-) (limited to 'src/mir_app') diff --git a/src/mir_app/src/MDatabaseCommon.cpp b/src/mir_app/src/MDatabaseCommon.cpp index 59a7e647ba..033cbea2b9 100644 --- a/src/mir_app/src/MDatabaseCommon.cpp +++ b/src/mir_app/src/MDatabaseCommon.cpp @@ -197,12 +197,10 @@ BOOL MDatabaseCommon::MetaDetouchSub(DBCachedContact *cc, int nSub) BOOL MDatabaseCommon::MetaSetDefault(DBCachedContact *cc) { - DBCONTACTWRITESETTING cws; - cws.szModule = META_PROTO; - cws.szSetting = "Default"; - cws.value.type = DBVT_DWORD; - cws.value.dVal = cc->nDefault; - return WriteContactSetting(cc->contactID, &cws); + DBVARIANT dbv; + dbv.type = DBVT_DWORD; + dbv.dVal = cc->nDefault; + return WriteContactSetting(cc->contactID, META_PROTO, "Default", &dbv); } BOOL MDatabaseCommon::MetaRemoveSubHistory(DBCachedContact*) @@ -451,17 +449,17 @@ STDMETHODIMP_(BOOL) MDatabaseCommon::FreeVariant(DBVARIANT *dbv) ///////////////////////////////////////////////////////////////////////////////////////// -STDMETHODIMP_(BOOL) MDatabaseCommon::WriteContactSetting(MCONTACT contactID, DBCONTACTWRITESETTING *dbcws) +STDMETHODIMP_(BOOL) MDatabaseCommon::WriteContactSetting(MCONTACT contactID, const char *szModule, const char *szSetting, DBVARIANT *dbv) { - if (dbcws == nullptr || dbcws->szSetting == nullptr || dbcws->szModule == nullptr) + if (dbv == nullptr || szSetting == nullptr || szModule == nullptr) return 1; // the db format can't tolerate more than 255 bytes of space (incl. null) for settings+module name - size_t settingNameLen = strlen(dbcws->szSetting); - size_t moduleNameLen = strlen(dbcws->szModule); + size_t settingNameLen = strlen(szSetting); + size_t moduleNameLen = strlen(szModule); // used for notifications - DBCONTACTWRITESETTING dbcwNotif = *dbcws; + DBCONTACTWRITESETTING dbcwNotif = {szModule, szSetting, *dbv}; if (dbcwNotif.value.type == DBVT_WCHAR) { if (dbcwNotif.value.pszVal != nullptr) { T2Utf val(dbcwNotif.value.pwszVal); @@ -487,7 +485,7 @@ STDMETHODIMP_(BOOL) MDatabaseCommon::WriteContactSetting(MCONTACT contactID, DBC case DBVT_ASCIIZ: case DBVT_UTF8: - bIsEncrypted = m_bEncrypted || IsSettingEncrypted(dbcws->szModule, dbcws->szSetting); + bIsEncrypted = m_bEncrypted || IsSettingEncrypted(szModule, szSetting); if (dbcwWork.value.pszVal == nullptr) return 1; diff --git a/src/mir_app/src/mir_app.def b/src/mir_app/src/mir_app.def index a7a3b3312b..37f37cec9d 100644 --- a/src/mir_app/src/mir_app.def +++ b/src/mir_app/src/mir_app.def @@ -740,7 +740,7 @@ _Netlib_GetTlsUnique@12 @831 NONAME ?FilterSearch@Clist@@3V?$CMOption@_N@@A @841 NONAME ?FillContactSettings@MDatabaseCommon@@IAEXXZ @842 NONAME ?GetContactSettingWorker@MDatabaseCommon@@MAGHIPBD0PAUDBVARIANT@@H@Z @843 NONAME -?WriteContactSetting@MDatabaseCommon@@UAGHIPAUDBCONTACTWRITESETTING@@@Z @844 NONAME +?WriteContactSetting@MDatabaseCommon@@UAGHIPBD0PAUDBVARIANT@@@Z @844 NONAME ?getCrypt@MDatabaseCommon@@QBEPAUMICryptoEngine@@XZ @845 NONAME ?isEncrypted@MDatabaseCommon@@QBE_NXZ @846 NONAME ?SelectProvider@MDatabaseCommon@@QAEPAUCRYPTO_PROVIDER@@XZ @847 NONAME diff --git a/src/mir_app/src/mir_app64.def b/src/mir_app/src/mir_app64.def index 7cfbe15e28..9f94234c59 100644 --- a/src/mir_app/src/mir_app64.def +++ b/src/mir_app/src/mir_app64.def @@ -740,7 +740,7 @@ Netlib_GetTlsUnique @831 NONAME ?FilterSearch@Clist@@3V?$CMOption@_N@@A @841 NONAME ?FillContactSettings@MDatabaseCommon@@IEAAXXZ @842 NONAME ?GetContactSettingWorker@MDatabaseCommon@@MEAAHIPEBD0PEAUDBVARIANT@@H@Z @843 NONAME -?WriteContactSetting@MDatabaseCommon@@UEAAHIPEAUDBCONTACTWRITESETTING@@@Z @844 NONAME +?WriteContactSetting@MDatabaseCommon@@UEAAHIPEBD0PEAUDBVARIANT@@@Z @844 NONAME ?getCrypt@MDatabaseCommon@@QEBAPEAUMICryptoEngine@@XZ @845 NONAME ?isEncrypted@MDatabaseCommon@@QEBA_NXZ @846 NONAME ?SelectProvider@MDatabaseCommon@@QEAAPEAUCRYPTO_PROVIDER@@XZ @847 NONAME -- cgit v1.2.3