diff options
author | George Hazan <ghazan@miranda.im> | 2021-05-20 17:18:15 +0300 |
---|---|---|
committer | George Hazan <ghazan@miranda.im> | 2021-05-20 17:18:15 +0300 |
commit | 46be94cd275231bb124f2887878d5a78be5abf9a (patch) | |
tree | ca025fcd5cb689a763d86176700dbcd7f4231aca /plugins/TabSRMM/src | |
parent | af4c6d82d1e4dfa9aa60aeabed408486a3979a3e (diff) |
mir_wstrstri - case-insensitive search of substring, Unicode version
Diffstat (limited to 'plugins/TabSRMM/src')
-rw-r--r-- | plugins/TabSRMM/src/chat.h | 1 | ||||
-rw-r--r-- | plugins/TabSRMM/src/chat_manager.cpp | 4 | ||||
-rw-r--r-- | plugins/TabSRMM/src/chat_tools.cpp | 22 |
3 files changed, 6 insertions, 21 deletions
diff --git a/plugins/TabSRMM/src/chat.h b/plugins/TabSRMM/src/chat.h index 2c9e762908..c083973fa7 100644 --- a/plugins/TabSRMM/src/chat.h +++ b/plugins/TabSRMM/src/chat.h @@ -113,7 +113,6 @@ int UM_CompareItem(const USERINFO *u1, const USERINFO *u2); // tools.c
BOOL DoSoundsFlashPopupTrayStuff(SESSION_INFO *si, GCEVENT *gce, BOOL bHighlight, int bManyFix);
-wchar_t* my_strstri(const wchar_t* s1, const wchar_t* s2);
bool IsHighlighted(SESSION_INFO *si, GCEVENT *pszText);
char GetIndicator(SESSION_INFO *si, LPCTSTR ptszNick, int *iNickIndex);
void Chat_SetFilters(SESSION_INFO *si);
diff --git a/plugins/TabSRMM/src/chat_manager.cpp b/plugins/TabSRMM/src/chat_manager.cpp index e42a13e2b7..ff8db52d88 100644 --- a/plugins/TabSRMM/src/chat_manager.cpp +++ b/plugins/TabSRMM/src/chat_manager.cpp @@ -100,7 +100,7 @@ SESSION_INFO* SM_FindSessionByHCONTACT(MCONTACT h) SESSION_INFO* SM_FindSessionAutoComplete(const char* pszModule, SESSION_INFO* currSession, SESSION_INFO* prevSession, const wchar_t* pszOriginal, const wchar_t* pszCurrent)
{
- if (prevSession == nullptr && my_strstri(currSession->ptszName, pszOriginal) == currSession->ptszName)
+ if (prevSession == nullptr && mir_wstrstri(currSession->ptszName, pszOriginal) == currSession->ptszName)
return currSession;
wchar_t *pszName = nullptr;
@@ -110,7 +110,7 @@ SESSION_INFO* SM_FindSessionAutoComplete(const char* pszModule, SESSION_INFO* cu SESSION_INFO *pResult = nullptr;
for (auto &si : g_chatApi.arSessions)
if (si != currSession && !mir_strcmpi(pszModule, si->pszModule))
- if (my_strstri(si->ptszName, pszOriginal) == si->ptszName)
+ if (mir_wstrstri(si->ptszName, pszOriginal) == si->ptszName)
if (prevSession != si && mir_wstrcmpi(si->ptszName, pszCurrent) > 0 && (!pszName || mir_wstrcmpi(si->ptszName, pszName) < 0)) {
pResult = si;
pszName = si->ptszName;
diff --git a/plugins/TabSRMM/src/chat_tools.cpp b/plugins/TabSRMM/src/chat_tools.cpp index a10947d45f..eec305efc6 100644 --- a/plugins/TabSRMM/src/chat_tools.cpp +++ b/plugins/TabSRMM/src/chat_tools.cpp @@ -147,10 +147,8 @@ BOOL DoPopup(SESSION_INFO *si, GCEVENT *gce) if (nen_options.iMUCDisable) // no popups at all. Period
return 0;
- /*
- * check the status mode against the status mask
- */
+ // check the status mode against the status mask
char *szProto = dat ? dat->m_szProto : si->pszModule;
if (nen_options.dwStatusMask != -1) {
if (szProto != nullptr) {
@@ -362,22 +360,10 @@ BOOL DoSoundsFlashPopupTrayStuff(SESSION_INFO *si, GCEVENT *gce, BOOL bHighlight return true;
}
-wchar_t* my_strstri(const wchar_t* s1, const wchar_t* s2)
-{
- int i, j, k;
-
- for (i = 0; s1[i]; i++)
- for (j = i, k = 0; towlower(s1[j]) == towlower(s2[k]); j++, k++)
- if (!s2[k + 1])
- return (wchar_t*)(s1 + i);
-
- return nullptr;
-}
+/////////////////////////////////////////////////////////////////////////////////////////
+// set all filters and notification config for a session
+// uses per channel mask + filterbits, default config as backup
-/*
- * set all filters and notification config for a session
- * uses per channel mask + filterbits, default config as backup
- */
void Chat_SetFilters(SESSION_INFO *si)
{
DWORD dwFlags_default = db_get_dw(0, CHAT_MODULE, "FilterFlags", GC_EVENT_ALL);
|