diff options
author | George Hazan <george.hazan@gmail.com> | 2024-09-09 20:50:24 +0300 |
---|---|---|
committer | George Hazan <george.hazan@gmail.com> | 2024-09-09 20:50:24 +0300 |
commit | ebf83d38be5ad294e3ed47bc33f947cee7b1a92f (patch) | |
tree | 2cae68c529ccd83909d249f7cc569131c9c0a82a /plugins/TabSRMM | |
parent | 632b426822098f54939469c4ff9b5ea190a35613 (diff) |
fixes #4617 (Подсветка (highlight) не срабатывает на ответы (reply))
Diffstat (limited to 'plugins/TabSRMM')
-rw-r--r-- | plugins/TabSRMM/src/muchighlight.cpp | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/plugins/TabSRMM/src/muchighlight.cpp b/plugins/TabSRMM/src/muchighlight.cpp index 8bc2dea134..0e34837673 100644 --- a/plugins/TabSRMM/src/muchighlight.cpp +++ b/plugins/TabSRMM/src/muchighlight.cpp @@ -164,11 +164,28 @@ skip_textpatterns: // optionally, match the nickname against the list of nicks to highlight
if ((m_iMode & MATCH_NICKNAME) && (dwFlags & MATCH_NICKNAME) && pgce->pszNick.w && m_iNickPatterns > 0) {
+ DBEVENTINFO dbei = {};
+ if (pgce->hEvent)
+ db_event_get(pgce->hEvent, &dbei);
+
for (UINT i = 0; i < m_iNickPatterns && !nResult; i++) {
if (pgce->pszNick.w)
- nResult = wildcmpw(pgce->pszNick.w, m_NickPatterns[i]) ? MATCH_NICKNAME : 0;
+ if (wildcmpw(pgce->pszNick.w, m_NickPatterns[i])) {
+ nResult = MATCH_NICKNAME;
+ break;
+ }
+
+ if (dbei.szReplyId)
+ if (wildcmpw(_A2T(dbei.szReplyId), m_NickPatterns[i])) {
+ nResult = MATCH_NICKNAME;
+ break;
+ }
+
if ((m_iMode & MATCH_UIN) && pgce->pszUserInfo.w)
- nResult = wildcmpw(pgce->pszUserInfo.w, m_NickPatterns[i]) ? MATCH_NICKNAME : 0;
+ if (wildcmpw(pgce->pszUserInfo.w, m_NickPatterns[i])) {
+ nResult = MATCH_NICKNAME;
+ break;
+ }
}
}
|