From a7c24ca48995cf2bf436156302f96b91bf135409 Mon Sep 17 00:00:00 2001 From: Goraf <22941576+Goraf@users.noreply.github.com> Date: Mon, 13 Nov 2017 15:03:31 +0100 Subject: Code modernize ... * replace 0/NULL with nullptr [using clang-tidy] --- plugins/Spamotron/src/bayes.cpp | 96 +++++++++++++-------------- plugins/Spamotron/src/options.cpp | 8 +-- plugins/Spamotron/src/popups.cpp | 12 ++-- plugins/Spamotron/src/spamotron.cpp | 40 ++++++------ plugins/Spamotron/src/utils.cpp | 126 ++++++++++++++++++------------------ 5 files changed, 141 insertions(+), 141 deletions(-) (limited to 'plugins/Spamotron') diff --git a/plugins/Spamotron/src/bayes.cpp b/plugins/Spamotron/src/bayes.cpp index aa377760a7..dc4d23e635 100644 --- a/plugins/Spamotron/src/bayes.cpp +++ b/plugins/Spamotron/src/bayes.cpp @@ -22,7 +22,7 @@ int CheckBayes() if (ServiceExists(MS_FOLDERS_REGISTER_PATH)) { hBayesFolder = FoldersRegisterCustomPath(PLUGIN_NAME, Translate("Bayes database path"), bayesdb_tmp); - } else hBayesFolder = 0; + } else hBayesFolder = nullptr; if (hBayesFolder) FoldersGetCustomPath(hBayesFolder, bayesdb_fullpath, MAX_PATH, bayesdb_tmp); @@ -62,18 +62,18 @@ int OpenBayes() if (sqlite3_open(bayesdb_fullpath_utf8, &bayesdb) == SQLITE_OK) { - sqlite3_exec(bayesdb, "CREATE TABLE IF NOT EXISTS spam (token blob(16), num int)", NULL, NULL, &errmsg); - sqlite3_exec(bayesdb, "CREATE TABLE IF NOT EXISTS ham (token blob(16), num int)", NULL, NULL, &errmsg); - sqlite3_exec(bayesdb, "CREATE TABLE IF NOT EXISTS stats (key varchar(32), value int)", NULL, NULL, &errmsg); - sqlite3_exec(bayesdb, "CREATE TABLE IF NOT EXISTS queue (contact int, msgtime int, message text)", NULL, NULL, &errmsg); - sqlite3_prepare_v2(bayesdb, "SELECT count(1) FROM stats WHERE key='spam_msgcount' OR key='ham_msgcount'", -1, &stmt, NULL); + sqlite3_exec(bayesdb, "CREATE TABLE IF NOT EXISTS spam (token blob(16), num int)", nullptr, nullptr, &errmsg); + sqlite3_exec(bayesdb, "CREATE TABLE IF NOT EXISTS ham (token blob(16), num int)", nullptr, nullptr, &errmsg); + sqlite3_exec(bayesdb, "CREATE TABLE IF NOT EXISTS stats (key varchar(32), value int)", nullptr, nullptr, &errmsg); + sqlite3_exec(bayesdb, "CREATE TABLE IF NOT EXISTS queue (contact int, msgtime int, message text)", nullptr, nullptr, &errmsg); + sqlite3_prepare_v2(bayesdb, "SELECT count(1) FROM stats WHERE key='spam_msgcount' OR key='ham_msgcount'", -1, &stmt, nullptr); if (sqlite3_step(stmt) == SQLITE_ROW) if (sqlite3_column_int(stmt, 0) != 2) { - sqlite3_exec(bayesdb, "INSERT INTO stats VALUES ('spam_msgcount', 0)", NULL, NULL, NULL); - sqlite3_exec(bayesdb, "INSERT INTO stats VALUES ('ham_msgcount', 0)", NULL, NULL, NULL); + sqlite3_exec(bayesdb, "INSERT INTO stats VALUES ('spam_msgcount', 0)", nullptr, nullptr, nullptr); + sqlite3_exec(bayesdb, "INSERT INTO stats VALUES ('ham_msgcount', 0)", nullptr, nullptr, nullptr); } } else { - MessageBoxA(NULL, bayesdb_fullpath_utf8, "Can't open database", MB_OK); + MessageBoxA(nullptr, bayesdb_fullpath_utf8, "Can't open database", MB_OK); } mir_free(bayesdb_fullpath_utf8); @@ -87,8 +87,8 @@ int OpenBayes() bayesdb_fullpath_utf8 = mir_utf8encode(bayesdb_fullpath); if (sqlite3_open(bayesdb_fullpath_utf8, &bayesdbg) == SQLITE_OK) { - sqlite3_exec(bayesdbg, "CREATE TABLE spam (token varchar(50), num int)", NULL, NULL, &errmsg); - sqlite3_exec(bayesdbg, "CREATE TABLE ham (token varchar(50), num int)", NULL, NULL, &errmsg); + sqlite3_exec(bayesdbg, "CREATE TABLE spam (token varchar(50), num int)", nullptr, nullptr, &errmsg); + sqlite3_exec(bayesdbg, "CREATE TABLE ham (token varchar(50), num int)", nullptr, nullptr, &errmsg); } mir_free(bayesdb_fullpath_utf8); #endif @@ -108,10 +108,10 @@ int get_token_count(int type) int count = 0; sqlite3_stmt *stmt; - if (bayesdb == NULL) + if (bayesdb == nullptr) return 0; mir_snprintf(q, "SELECT COUNT(1) FROM %s", type == SPAM ? "spam" : "ham"); - sqlite3_prepare_v2(bayesdb, q, -1, &stmt, NULL); + sqlite3_prepare_v2(bayesdb, q, -1, &stmt, nullptr); if (sqlite3_step(stmt) == SQLITE_ROW) { count = sqlite3_column_int(stmt, 0); } @@ -124,10 +124,10 @@ int get_msg_count(int type) int count = 0; sqlite3_stmt *stmt; - if (bayesdb == NULL) + if (bayesdb == nullptr) return 0; - sqlite3_prepare_v2(bayesdb, "SELECT value FROM stats WHERE key=?", -1, &stmt, NULL); - sqlite3_bind_text(stmt, 1, type == SPAM ? "spam_msgcount" : "ham_msgcount", type == SPAM ? 13 : 12, NULL); + sqlite3_prepare_v2(bayesdb, "SELECT value FROM stats WHERE key=?", -1, &stmt, nullptr); + sqlite3_bind_text(stmt, 1, type == SPAM ? "spam_msgcount" : "ham_msgcount", type == SPAM ? 13 : 12, nullptr); if (sqlite3_step(stmt) == SQLITE_ROW) { count = sqlite3_column_int(stmt, 0); } @@ -163,12 +163,12 @@ int get_token_score(int type, char *token) BYTE digest[16]; sqlite3_stmt *stmt; - if (bayesdb == NULL) + if (bayesdb == nullptr) return 0; mir_snprintf(sql, "SELECT num FROM %s WHERE token=?", type == SPAM ? "spam" : "ham"); tokenhash(token, digest); - sqlite3_prepare_v2(bayesdb, sql, -1, &stmt, NULL); - sqlite3_bind_blob(stmt, 1, digest, 16, NULL); + sqlite3_prepare_v2(bayesdb, sql, -1, &stmt, nullptr); + sqlite3_bind_blob(stmt, 1, digest, 16, nullptr); if (sqlite3_step(stmt) == SQLITE_ROW) { score = sqlite3_column_int(stmt, 0); @@ -181,10 +181,10 @@ double get_msg_score(wchar_t *msg) { char *message, *token; double spam_prob, ham_prob, tmp1 = 1, tmp2 = 1; - double *scores = NULL; + double *scores = nullptr; int spam_msgcount, ham_msgcount, n = 0, i; - if (bayesdb == NULL) + if (bayesdb == nullptr) return 0; message = mir_u2a(msg); @@ -194,7 +194,7 @@ double get_msg_score(wchar_t *msg) while (token) { if (!is_token_valid(token)) { - token = strtok(NULL, DELIMS); + token = strtok(nullptr, DELIMS); continue; } scores = (double*)realloc(scores, sizeof(double)*(n + 1)); @@ -207,7 +207,7 @@ double get_msg_score(wchar_t *msg) ham_prob = ham_prob > 1.0 ? 1.0 : (ham_prob < 0.01 ? 0.01 : ham_prob); scores[n++] = spam_prob / (spam_prob + ham_prob); - token = strtok(NULL, DELIMS); + token = strtok(nullptr, DELIMS); } for (i = 0; i < n; i++) { @@ -231,14 +231,14 @@ void queue_message(MCONTACT hContact, DWORD msgtime, wchar_t *message) if (_getOptB("BayesEnabled", defaultBayesEnabled) == 0) return; - if (bayesdb == NULL) + if (bayesdb == nullptr) OpenBayes(); - sqlite3_prepare_v2(bayesdb, "INSERT INTO queue VALUES(?,?,?)", -1, &stmt, NULL); + sqlite3_prepare_v2(bayesdb, "INSERT INTO queue VALUES(?,?,?)", -1, &stmt, nullptr); sqlite3_bind_int(stmt, 1, (DWORD)hContact); sqlite3_bind_int(stmt, 2, msgtime); tmp = mir_u2a(message); - sqlite3_bind_text(stmt, 3, tmp, (int)mir_strlen(tmp), NULL); + sqlite3_bind_text(stmt, 3, tmp, (int)mir_strlen(tmp), nullptr); sqlite3_step(stmt); mir_free(tmp); sqlite3_finalize(stmt); @@ -251,10 +251,10 @@ void bayes_approve_contact(MCONTACT hContact) int d = 0; sqlite3_stmt *stmt; - if (bayesdb == NULL) + if (bayesdb == nullptr) return; - sqlite3_prepare_v2(bayesdb, "SELECT message FROM queue WHERE contact=?", -1, &stmt, NULL); + sqlite3_prepare_v2(bayesdb, "SELECT message FROM queue WHERE contact=?", -1, &stmt, nullptr); sqlite3_bind_int(stmt, 1, (DWORD)hContact); while (sqlite3_step(stmt) == SQLITE_ROW) { @@ -266,7 +266,7 @@ void bayes_approve_contact(MCONTACT hContact) } sqlite3_finalize(stmt); if (d) { - sqlite3_prepare_v2(bayesdb, "DELETE FROM queue WHERE contact=?", -1, &stmt, NULL); + sqlite3_prepare_v2(bayesdb, "DELETE FROM queue WHERE contact=?", -1, &stmt, nullptr); sqlite3_bind_int(stmt, 1, (DWORD)hContact); sqlite3_step(stmt); sqlite3_finalize(stmt); @@ -276,16 +276,16 @@ void bayes_approve_contact(MCONTACT hContact) void dequeue_messages() { - time_t t = time(NULL); + time_t t = time(nullptr); sqlite3_stmt *stmt; const char *message; wchar_t *messageW; int d = 0; - if (bayesdb == NULL) + if (bayesdb == nullptr) return; - sqlite3_prepare_v2(bayesdb, "SELECT message FROM queue WHERE msgtime + ? < ?", -1, &stmt, NULL); + sqlite3_prepare_v2(bayesdb, "SELECT message FROM queue WHERE msgtime + ? < ?", -1, &stmt, nullptr); sqlite3_bind_int(stmt, 1, _getOptD("BayesWaitApprove", defaultBayesWaitApprove)*86400); sqlite3_bind_int(stmt, 2, (DWORD)t); while (sqlite3_step(stmt) == SQLITE_ROW) { @@ -297,7 +297,7 @@ void dequeue_messages() } sqlite3_finalize(stmt); if (d) { - sqlite3_prepare_v2(bayesdb, "DELETE FROM queue WHERE msgtime + ? < ?", -1, &stmt, NULL); + sqlite3_prepare_v2(bayesdb, "DELETE FROM queue WHERE msgtime + ? < ?", -1, &stmt, nullptr); sqlite3_bind_int(stmt, 1, _getOptD("BayesWaitApprove", defaultBayesWaitApprove)*86400); sqlite3_bind_int(stmt, 2, (DWORD)t); sqlite3_step(stmt); @@ -318,7 +318,7 @@ void learn(int type, wchar_t *msg) if (_getOptB("BayesEnabled", defaultBayesEnabled) == 0) return; - if (bayesdb == NULL) + if (bayesdb == nullptr) OpenBayes(); message = mir_u2a(msg); @@ -328,49 +328,49 @@ void learn(int type, wchar_t *msg) mir_snprintf(sql_update, "UPDATE %s SET num=num+1 WHERE token=?", type ? "spam" : "ham"); mir_snprintf(sql_insert, "INSERT INTO %s VALUES(?, 1)", type ? "spam" : "ham"); #ifdef _DEBUG - sqlite3_exec(bayesdbg, "BEGIN", NULL, NULL, NULL); + sqlite3_exec(bayesdbg, "BEGIN", nullptr, nullptr, nullptr); #endif - sqlite3_exec(bayesdb, "BEGIN", NULL, NULL, NULL); + sqlite3_exec(bayesdb, "BEGIN", nullptr, nullptr, nullptr); while (tok) { if (!is_token_valid(tok)) { - tok = strtok(NULL, DELIMS); + tok = strtok(nullptr, DELIMS); continue; } tokenhash(tok, digest); - sqlite3_prepare_v2(bayesdb, sql_select, -1, &stmt, NULL); + sqlite3_prepare_v2(bayesdb, sql_select, -1, &stmt, nullptr); sqlite3_bind_blob(stmt, 1, digest, 16, SQLITE_STATIC); if (SQLITE_ROW == sqlite3_step(stmt)) { sqlite3_finalize(stmt); - sqlite3_prepare_v2(bayesdb, sql_update, -1, &stmt, NULL); + sqlite3_prepare_v2(bayesdb, sql_update, -1, &stmt, nullptr); } else { sqlite3_finalize(stmt); - sqlite3_prepare_v2(bayesdb, sql_insert, -1, &stmt, NULL); + sqlite3_prepare_v2(bayesdb, sql_insert, -1, &stmt, nullptr); } sqlite3_bind_blob(stmt, 1, digest, 16, SQLITE_STATIC); sqlite3_step(stmt); sqlite3_finalize(stmt); #ifdef _DEBUG - sqlite3_prepare_v2(bayesdbg, sql_select, -1, &stmtdbg, NULL); - sqlite3_bind_text(stmtdbg, 1, tok, (int)mir_strlen(tok), NULL); + sqlite3_prepare_v2(bayesdbg, sql_select, -1, &stmtdbg, nullptr); + sqlite3_bind_text(stmtdbg, 1, tok, (int)mir_strlen(tok), nullptr); if (SQLITE_ROW == sqlite3_step(stmtdbg)) { sqlite3_finalize(stmtdbg); - sqlite3_prepare_v2(bayesdbg, sql_update, -1, &stmtdbg, NULL); + sqlite3_prepare_v2(bayesdbg, sql_update, -1, &stmtdbg, nullptr); } else { sqlite3_finalize(stmtdbg); - sqlite3_prepare_v2(bayesdbg, sql_insert, -1, &stmtdbg, NULL); + sqlite3_prepare_v2(bayesdbg, sql_insert, -1, &stmtdbg, nullptr); } sqlite3_bind_text(stmtdbg, 1, tok, (int)mir_strlen(tok), SQLITE_STATIC); sqlite3_step(stmtdbg); sqlite3_finalize(stmtdbg); #endif - tok = strtok(NULL, DELIMS); + tok = strtok(nullptr, DELIMS); } - sqlite3_exec(bayesdb, sql_counter, NULL, NULL, NULL); - sqlite3_exec(bayesdb, "COMMIT", NULL, NULL, NULL); + sqlite3_exec(bayesdb, sql_counter, nullptr, nullptr, nullptr); + sqlite3_exec(bayesdb, "COMMIT", nullptr, nullptr, nullptr); #ifdef _DEBUG - sqlite3_exec(bayesdbg, "COMMIT", NULL, NULL, NULL); + sqlite3_exec(bayesdbg, "COMMIT", nullptr, nullptr, nullptr); #endif mir_free(message); } diff --git a/plugins/Spamotron/src/options.cpp b/plugins/Spamotron/src/options.cpp index 1c528f9d52..f4d4733a49 100644 --- a/plugins/Spamotron/src/options.cpp +++ b/plugins/Spamotron/src/options.cpp @@ -83,7 +83,7 @@ BOOL _saveDlgItemScore(HWND hDialog, int controlID, char* option) len = GetWindowTextLength(GetDlgItem(hDialog, controlID)); tmp = (wchar_t *)malloc((len + 1)*sizeof(wchar_t)); GetDlgItemText(hDialog, controlID, tmp, len + 1); - _setOptD(option, wcstod(tmp, NULL)/SCORE_C); + _setOptD(option, wcstod(tmp, nullptr)/SCORE_C); return TRUE; } @@ -374,7 +374,7 @@ INT_PTR CALLBACK DlgProcOptionsQuestion(HWND optDlg, UINT msg, WPARAM wParam, LP break; } if (_saveDlgItemResponse(optDlg, IDC_OPT_RESPONSE, "Response") == -1) { - MessageBox(NULL, TranslateT("Invalid regular expression.\nKeeping previous value."), L"Error", MB_OK); + MessageBox(nullptr, TranslateT("Invalid regular expression.\nKeeping previous value."), L"Error", MB_OK); return FALSE; } _saveDlgItemText(optDlg, IDC_OPT_SUCCESS_RESPONSE, "SuccessResponse"); @@ -521,7 +521,7 @@ INT_PTR CALLBACK DlgProcOptionsBayes(HWND optDlg, UINT msg, WPARAM wParam, LPARA GetDlgItemText(optDlg, IDC_OPT_BAYES_LEARNBOX, dbuf, len); mir_snprintf(cbuf, "%0.04f", get_msg_score(dbuf)); SetDlgItemText(optDlg, IDC_OPT_BAYES_LEARNBOX, L""); - MessageBoxA(NULL, cbuf, Translate("Message score"), MB_OK); + MessageBoxA(nullptr, cbuf, Translate("Message score"), MB_OK); free(dbuf); return FALSE; @@ -579,7 +579,7 @@ int OnOptInitialize(WPARAM wParam, LPARAM) odp.pszTemplate = MAKEINTRESOURCEA(IDD_SPAMOTRON_POPUPS); odp.pfnDlgProc = DlgProcOptionsPopups; odp.szGroup.a = LPGEN("Popups"); - odp.szTab.a = NULL; + odp.szTab.a = nullptr; Options_AddPage(wParam, &odp); } return 0; diff --git a/plugins/Spamotron/src/popups.cpp b/plugins/Spamotron/src/popups.cpp index 27bc8f392b..a5f6afde33 100644 --- a/plugins/Spamotron/src/popups.cpp +++ b/plugins/Spamotron/src/popups.cpp @@ -108,9 +108,9 @@ INT_PTR CALLBACK DlgProcOptionsPopups(HWND optDlg, UINT msg, WPARAM wParam, LPAR return FALSE; break; case IDC_OPT_POPUPS_PREVIEW: - ShowPopupPreview(optDlg, POPUP_BLOCKED, NULL, TranslateT("Message blocked due to preview action")); - ShowPopupPreview(optDlg, POPUP_APPROVED, NULL, TranslateT("Contact approved due to preview action")); - ShowPopupPreview(optDlg, POPUP_CHALLENGE, NULL, TranslateT("Challenge sent to preview contact")); + ShowPopupPreview(optDlg, POPUP_BLOCKED, nullptr, TranslateT("Message blocked due to preview action")); + ShowPopupPreview(optDlg, POPUP_APPROVED, nullptr, TranslateT("Contact approved due to preview action")); + ShowPopupPreview(optDlg, POPUP_CHALLENGE, nullptr, TranslateT("Challenge sent to preview contact")); return FALSE; } SendMessage(GetParent(optDlg), PSM_CHANGED, 0, 0); @@ -155,19 +155,19 @@ int ShowPopupPreview(HWND optDlg, BYTE popupType, wchar_t *line1, wchar_t *line2 case POPUP_BLOCKED: ppdp.colorText = SendDlgItemMessage(optDlg,IDC_OPT_POPUPS_BLOCKED_FOREGROUND,CPM_GETCOLOUR,0,0); ppdp.colorBack = SendDlgItemMessage(optDlg,IDC_OPT_POPUPS_BLOCKED_BACKGROUND,CPM_GETCOLOUR,0,0); - ppdp.iSeconds = GetDlgItemInt(optDlg, IDC_OPT_POPUPS_BLOCKED_TIMEOUT, NULL, TRUE); + ppdp.iSeconds = GetDlgItemInt(optDlg, IDC_OPT_POPUPS_BLOCKED_TIMEOUT, nullptr, TRUE); ppdp.lchIcon = Skin_LoadIcon(SKINICON_OTHER_DELETE); break; case POPUP_APPROVED: ppdp.colorText = SendDlgItemMessage(optDlg,IDC_OPT_POPUPS_APPROVED_FOREGROUND,CPM_GETCOLOUR,0,0); ppdp.colorBack = SendDlgItemMessage(optDlg,IDC_OPT_POPUPS_APPROVED_BACKGROUND,CPM_GETCOLOUR,0,0); - ppdp.iSeconds = GetDlgItemInt(optDlg, IDC_OPT_POPUPS_APPROVED_TIMEOUT, NULL, TRUE); + ppdp.iSeconds = GetDlgItemInt(optDlg, IDC_OPT_POPUPS_APPROVED_TIMEOUT, nullptr, TRUE); ppdp.lchIcon = Skin_LoadIcon(SKINICON_OTHER_ADDCONTACT); break; case POPUP_CHALLENGE: ppdp.colorText = SendDlgItemMessage(optDlg,IDC_OPT_POPUPS_CHALLENGE_FOREGROUND,CPM_GETCOLOUR,0,0); ppdp.colorBack = SendDlgItemMessage(optDlg,IDC_OPT_POPUPS_CHALLENGE_BACKGROUND,CPM_GETCOLOUR,0,0); - ppdp.iSeconds = GetDlgItemInt(optDlg, IDC_OPT_POPUPS_CHALLENGE_TIMEOUT, NULL, TRUE); + ppdp.iSeconds = GetDlgItemInt(optDlg, IDC_OPT_POPUPS_CHALLENGE_TIMEOUT, nullptr, TRUE); ppdp.lchIcon = Skin_LoadIcon(SKINICON_EVENT_MESSAGE); break; } diff --git a/plugins/Spamotron/src/spamotron.cpp b/plugins/Spamotron/src/spamotron.cpp index 3cf7247c4a..f9462b77e6 100644 --- a/plugins/Spamotron/src/spamotron.cpp +++ b/plugins/Spamotron/src/spamotron.cpp @@ -42,7 +42,7 @@ int OnDBEventFilterAdd(WPARAM wParam, LPARAM lParam) char protoOption[256] = {0}; int buflen = MAX_BUFFER_LENGTH; wchar_t buf[MAX_BUFFER_LENGTH]; - wchar_t *challengeW = NULL, *tmpW = NULL; + wchar_t *challengeW = nullptr, *tmpW = nullptr; wchar_t mexpr[64]; int maxmsglen = 0, a, b, i; BOOL bayesEnabled = _getOptB("BayesEnabled", defaultBayesEnabled); @@ -59,9 +59,9 @@ int OnDBEventFilterAdd(WPARAM wParam, LPARAM lParam) /*** Dequeue and learn messages ***/ if (bayesEnabled && _getOptB("BayesAutolearnNotApproved", defaultBayesAutolearnNotApproved)) - if (time(NULL) - last_queue_check > 4*3600) { // dequeue every 4 hours + if (time(nullptr) - last_queue_check > 4*3600) { // dequeue every 4 hours dequeue_messages(); - last_queue_check = time(NULL); + last_queue_check = time(nullptr); } /*** Check for conditional and unconditional approval ***/ @@ -121,9 +121,9 @@ int OnDBEventFilterAdd(WPARAM wParam, LPARAM lParam) for(a = 4; a > 0; a--) msgblob += mir_strlen(msgblob)+1; } - else msgblob = NULL; + else msgblob = nullptr; - wchar_t *message = NULL; + wchar_t *message = nullptr; if (dbei->flags & DBEF_UTF) message = mir_utf8decodeW(msgblob); else @@ -132,7 +132,7 @@ int OnDBEventFilterAdd(WPARAM wParam, LPARAM lParam) /*** Check for words in white-list ***/ if (_getOptB("ApproveOnMsgIn", defaultApproveOnMsgIn)) { wchar_t *whitelist = (wchar_t*)malloc(2048 * sizeof(wchar_t)); - if (whitelist != NULL) { + if (whitelist != nullptr) { _getOptS(whitelist, 2048, "ApproveOnMsgInWordlist", defaultApproveOnMsgInWordlist); if (_isregex(whitelist)) { if (_regmatch(message, whitelist)) @@ -140,12 +140,12 @@ int OnDBEventFilterAdd(WPARAM wParam, LPARAM lParam) } else { wchar_t *ptok = wcstok(whitelist, L" "); - while (ptok != NULL) { + while (ptok != nullptr) { if (wcsstr(message, ptok)) { bCorrectResponse = TRUE; break; } - ptok = wcstok(NULL, L" "); + ptok = wcstok(nullptr, L" "); } } free(whitelist); @@ -205,7 +205,7 @@ int OnDBEventFilterAdd(WPARAM wParam, LPARAM lParam) break; case SPAMOTRON_MODE_MATH: - if (message == NULL) + if (message == nullptr) break; _itow(_getCOptD(hContact, "ResponseMath", -1), buf, 10); if (wcsstr(message, buf) && (mir_wstrlen(buf) == mir_wstrlen(message))) { @@ -227,7 +227,7 @@ int OnDBEventFilterAdd(WPARAM wParam, LPARAM lParam) T2Utf response(_getOptS(buf, buflen, "SuccessResponse", defaultSuccessResponse)); ProtoChainSend(hContact, PSS_MESSAGE, 0, response); } - _notify(hContact, POPUP_APPROVED, TranslateT("Contact %s approved."), NULL); + _notify(hContact, POPUP_APPROVED, TranslateT("Contact %s approved."), nullptr); // Resubmit pending authorization request if (_getCOptB(hContact, "AuthEventPending", FALSE)) { @@ -236,7 +236,7 @@ int OnDBEventFilterAdd(WPARAM wParam, LPARAM lParam) char* szAuthEventModule; if (db_get(hContact, PLUGIN_NAME, "AuthEvent", &_dbv) == 0) { DBEVENTINFO *_dbei = (DBEVENTINFO *)malloc(sizeof(DBEVENTINFO)); - if (_dbei != NULL) { + if (_dbei != nullptr) { memcpy(&_dbei->cbBlob, _dbv.pbVal, sizeof(DWORD)); _dbei->eventType = EVENTTYPE_AUTHREQUEST; _getCOptS(AuthEventModule, 100, hContact, "AuthEventModule", L"ICQ"); @@ -377,7 +377,7 @@ int OnDBEventFilterAdd(WPARAM wParam, LPARAM lParam) else _getOptS(challengeW, maxmsglen, "Challenge", defaultChallenge); _getOptS(buf, buflen, "Response", defaultResponse); - srand(time(NULL)); + srand(time(nullptr)); _setCOptD(hContact, "ResponseNum", rand() % get_response_num(buf)); ReplaceVarsNum(challengeW, maxmsglen, _getCOptD(hContact, "ResponseNum", 0)); ProtoChainSend(hContact, PSS_MESSAGE, 0, T2Utf(challengeW)); @@ -407,7 +407,7 @@ int OnDBEventFilterAdd(WPARAM wParam, LPARAM lParam) db_set_b(hContact, "CList", "Delete", 1); // Queue user message in Bayes db - if (bayesEnabled && message != NULL) + if (bayesEnabled && message != nullptr) queue_message(hContact, dbei->timestamp, message); @@ -421,7 +421,7 @@ int OnDBEventFilterAdd(WPARAM wParam, LPARAM lParam) _setCOptD(hContact, "MsgSentTime", dbei->timestamp); // Save Last Msg and update SameMsgCount - if (message != NULL) { + if (message != nullptr) { if (mir_wstrcmp(_getCOptS(buf, buflen, hContact, "LastInMsg", L""), message) == 0) _setCOptD(hContact, "SameMsgCount", 1 + _getCOptD(hContact, "SameMsgCount", 0)); else @@ -429,7 +429,7 @@ int OnDBEventFilterAdd(WPARAM wParam, LPARAM lParam) _setCOptTS(hContact, "LastInMsg", message); } - if (message != NULL) + if (message != nullptr) mir_free(message); // Finally silently save the message to contact history if corresponding option is set @@ -437,7 +437,7 @@ int OnDBEventFilterAdd(WPARAM wParam, LPARAM lParam) if (dbei->eventType == EVENTTYPE_AUTHREQUEST) { // Save the request to database so that it can be automatically submitted on user approval PBYTE eventdata = (PBYTE)malloc(sizeof(DWORD) + dbei->cbBlob); - if (eventdata != NULL && dbei->cbBlob > 0) { + if (eventdata != nullptr && dbei->cbBlob > 0) { memcpy(eventdata, &dbei->cbBlob, sizeof(DWORD)); memcpy(eventdata + sizeof(DWORD), dbei->pBlob, dbei->cbBlob); db_set_blob(hContact, PLUGIN_NAME, "AuthEvent", eventdata, sizeof(DWORD) + dbei->cbBlob); @@ -452,7 +452,7 @@ int OnDBEventFilterAdd(WPARAM wParam, LPARAM lParam) DWORD dbei_size = 3 * sizeof(DWORD) + sizeof(WORD) + dbei->cbBlob + (DWORD)mir_strlen(dbei->szModule) + 1; PBYTE eventdata = (PBYTE)malloc(dbei_size); PBYTE pos = eventdata; - if (eventdata != NULL && dbei->cbBlob > 0) { + if (eventdata != nullptr && dbei->cbBlob > 0) { if (db_get(hContact, PLUGIN_NAME, "LastMsgEvents", &_dbv) == 0) { eventdata = (PBYTE)realloc(eventdata, dbei_size + _dbv.cpbVal); pos = eventdata; @@ -512,14 +512,14 @@ extern "C" __declspec(dllexport) int Load() mir_getLP(&pluginInfo); pcli = Clist_GetInterface(); - srand((unsigned)time(0)); - bayesdb = NULL; + srand((unsigned)time(nullptr)); + bayesdb = nullptr; if (_getOptB("BayesEnabled", defaultBayesEnabled)) { if (CheckBayes()) { OpenBayes(); if (_getOptB("BayesAutolearnNotApproved", defaultBayesAutolearnNotApproved)) { dequeue_messages(); - last_queue_check = time(NULL); + last_queue_check = time(nullptr); } } } diff --git a/plugins/Spamotron/src/utils.cpp b/plugins/Spamotron/src/utils.cpp index fd963d0aa5..6084dc7a4d 100644 --- a/plugins/Spamotron/src/utils.cpp +++ b/plugins/Spamotron/src/utils.cpp @@ -4,8 +4,8 @@ wchar_t *_tcstolower(wchar_t *dst) { - if (dst == NULL) - return NULL; + if (dst == nullptr) + return nullptr; SIZE_T dst_len = mir_wstrlen(dst); for (SIZE_T i = 0; i < dst_len; i ++) @@ -15,8 +15,8 @@ wchar_t *_tcstolower(wchar_t *dst) wchar_t *_tcstoupper(wchar_t *dst) { - if (dst == NULL) - return NULL; + if (dst == nullptr) + return nullptr; SIZE_T dst_len = mir_wstrlen(dst); for (SIZE_T i = 0; i < dst_len; i ++) @@ -34,15 +34,15 @@ BOOL _isregex(wchar_t* strSearch) wchar_t regex_parse[] = L"/(.*)/([igsm]*)"; int ovector[9]; - if (strSearch == NULL) + if (strSearch == nullptr) return FALSE; - re = pcre16_compile(regex_parse, 0, &error, &erroroffs, NULL); - if (re == NULL) + re = pcre16_compile(regex_parse, 0, &error, &erroroffs, nullptr); + if (re == nullptr) return FALSE; regex = mir_wstrdup(strSearch); - if (regex == NULL) + if (regex == nullptr) goto err_out; - rc = pcre16_exec(re, NULL, regex, (int)mir_wstrlen(regex), 0, 0, ovector, 9); + rc = pcre16_exec(re, nullptr, regex, (int)mir_wstrlen(regex), 0, 0, ovector, 9); if (rc == 3) ret = TRUE; mir_free(regex); @@ -63,17 +63,17 @@ BOOL _isvalidregex(wchar_t* strSearch) wchar_t regex_parse[] = L"/(.*)/([igsm]*)"; int ovector[9]; - if (strSearch == NULL) + if (strSearch == nullptr) return FALSE; - re = pcre16_compile(regex_parse, 0, &error, &erroroffs, NULL); - if (re == NULL) + re = pcre16_compile(regex_parse, 0, &error, &erroroffs, nullptr); + if (re == nullptr) return FALSE; regex = mir_wstrdup(strSearch); - if (regex == NULL) { + if (regex == nullptr) { pcre16_free(re); return FALSE; } - rc = pcre16_exec(re, NULL, regex, (int)mir_wstrlen(regex), 0, 0, ovector, 9); + rc = pcre16_exec(re, nullptr, regex, (int)mir_wstrlen(regex), 0, 0, ovector, 9); pcre16_free(re); if (rc != 3) goto err_out; @@ -89,8 +89,8 @@ BOOL _isvalidregex(wchar_t* strSearch) if (wcsstr(mod, L"s")) opts |= PCRE_DOTALL; - re = pcre16_compile(regexp, opts, &error, &erroroffs, NULL); - if (re != NULL) { + re = pcre16_compile(regexp, opts, &error, &erroroffs, nullptr); + if (re != nullptr) { pcre16_free(re); ret = TRUE; } @@ -106,22 +106,22 @@ BOOL _regmatch(wchar_t* str, wchar_t* strSearch) pcre16 *re; const char *error; int erroroffs, rc; - wchar_t *regex, *regexp, *data = NULL, *mod; + wchar_t *regex, *regexp, *data = nullptr, *mod; int opts = 0; wchar_t regex_parse[] = L"^/(.*)/([igsm]*)"; int ovector[9]; - if (str == NULL || strSearch == NULL) + if (str == nullptr || strSearch == nullptr) return FALSE; - re = pcre16_compile(regex_parse, 0, &error, &erroroffs, NULL); - if (re == NULL) + re = pcre16_compile(regex_parse, 0, &error, &erroroffs, nullptr); + if (re == nullptr) return FALSE; // [TODO] and log some error regex = mir_wstrdup(strSearch); - if (regex == NULL) { + if (regex == nullptr) { pcre16_free(re); return FALSE; } - rc = pcre16_exec(re, NULL, regex, (int)mir_wstrlen(regex), 0, 0, ovector, 9); + rc = pcre16_exec(re, nullptr, regex, (int)mir_wstrlen(regex), 0, 0, ovector, 9); pcre16_free(re); if (rc != 3) goto err_out; // [TODO] and log some error (better check for valid regex on options save) @@ -131,7 +131,7 @@ BOOL _regmatch(wchar_t* str, wchar_t* strSearch) mod[ovector[5] - ovector[4]] = 0; data = mir_wstrdup(str); - if (data == NULL) + if (data == nullptr) goto err_out; if (wcsstr(mod, L"i")) opts |= PCRE_CASELESS; @@ -140,10 +140,10 @@ BOOL _regmatch(wchar_t* str, wchar_t* strSearch) if (wcsstr(mod, L"s")) opts |= PCRE_DOTALL; - re = pcre16_compile(regexp, opts, &error, &erroroffs, NULL); - if (re == NULL) + re = pcre16_compile(regexp, opts, &error, &erroroffs, nullptr); + if (re == nullptr) goto err_out; - rc = pcre16_exec(re, NULL, data, (int)mir_wstrlen(data), 0, 0, NULL, 0); + rc = pcre16_exec(re, nullptr, data, (int)mir_wstrlen(data), 0, 0, nullptr, 0); pcre16_free(re); if (rc >= 0) ret = TRUE; @@ -164,17 +164,17 @@ int get_response_id(const wchar_t* strvar) wchar_t regex[] = L"^%response([#-_]([0-9]+))?%$"; int ovector[9]; - if (strvar == NULL) + if (strvar == nullptr) return 0; - re = pcre16_compile(regex, 0, &error, &erroroffs, NULL); - if (re == NULL) + re = pcre16_compile(regex, 0, &error, &erroroffs, nullptr); + if (re == nullptr) return 0; // [TODO] and log some error _strvar = mir_wstrdup(strvar); - if (_strvar == NULL) { + if (_strvar == nullptr) { pcre16_free(re); return 0; } - rc = pcre16_exec(re, NULL, _strvar, (int)mir_wstrlen(_strvar), 0, 0, ovector, 9); + rc = pcre16_exec(re, nullptr, _strvar, (int)mir_wstrlen(_strvar), 0, 0, ovector, 9); pcre16_free(re); if (rc < 0) { ret = -1; @@ -193,15 +193,15 @@ int get_response_num(const wchar_t *str) int i = 0; wchar_t *tmp, *strc; - if (str == NULL) + if (str == nullptr) return 0; strc = mir_wstrdup(str); - if (strc == NULL) + if (strc == nullptr) return 0; tmp = wcstok(strc, L"\r\n"); while (tmp) { i ++; - tmp = wcstok(NULL, L"\r\n"); /* Move next. */ + tmp = wcstok(nullptr, L"\r\n"); /* Move next. */ } mir_free(strc); @@ -213,10 +213,10 @@ wchar_t* get_response(wchar_t* dst, unsigned int dstlen, int num) int i = 0; wchar_t *tmp, *src; - if (dst == NULL || dstlen == 0 || num < 0) + if (dst == nullptr || dstlen == 0 || num < 0) return dst; src = (wchar_t*)mir_alloc(MAX_BUFFER_LENGTH * sizeof(wchar_t)); - if (src == NULL) + if (src == nullptr) goto err_out; _getOptS(src, MAX_BUFFER_LENGTH, "Response", defaultResponse); tmp = wcstok(src, L"\r\n"); @@ -227,7 +227,7 @@ wchar_t* get_response(wchar_t* dst, unsigned int dstlen, int num) return dst; } i ++; - tmp = wcstok(NULL, L"\r\n"); /* Move next. */ + tmp = wcstok(nullptr, L"\r\n"); /* Move next. */ } mir_free(src); err_out: @@ -237,19 +237,19 @@ err_out: wchar_t* _tcsstr_cc(wchar_t* str, wchar_t* strSearch, BOOL cc) { - wchar_t *ret = NULL, *_str = NULL, *_strSearch = NULL; + wchar_t *ret = nullptr, *_str = nullptr, *_strSearch = nullptr; if (cc) return wcsstr(str, strSearch); _str = mir_wstrdup(str); - if (_str == NULL) + if (_str == nullptr) goto err_out; _strSearch = mir_wstrdup(strSearch); - if (_strSearch == NULL) + if (_strSearch == nullptr) goto err_out; ret = wcsstr(_tcstolower(_str), _tcstolower(_strSearch)); - if (ret != NULL) + if (ret != nullptr) ret = ((ret - _str) + str); err_out: mir_free(_str); @@ -261,16 +261,16 @@ err_out: BOOL Contains(wchar_t* dst, wchar_t* src) // Checks for occurence of substring from src in dst { BOOL ret = FALSE; - wchar_t *tsrc = NULL, *tdst = NULL, *token, *token_end; + wchar_t *tsrc = nullptr, *tdst = nullptr, *token, *token_end; SIZE_T dst_len; - if (dst == NULL || src == NULL) + if (dst == nullptr || src == nullptr) return FALSE; tsrc = mir_wstrdup(src); - if (tsrc == NULL) + if (tsrc == nullptr) goto err_out; tdst = mir_wstrdup(dst); - if (tdst == NULL) + if (tdst == nullptr) goto err_out; tdst = _tcstoupper(tdst); dst_len = mir_wstrlen(tdst); @@ -291,7 +291,7 @@ BOOL Contains(wchar_t* dst, wchar_t* src) // Checks for occurence of substring f ret = TRUE; break; } - token = wcstok(NULL, L","); /* Move next. */ + token = wcstok(nullptr, L","); /* Move next. */ } err_out: mir_free(tsrc); @@ -326,15 +326,15 @@ wchar_t* ReplaceVar(wchar_t *dst, unsigned int len, const wchar_t *var, const wc wchar_t *var_start; SIZE_T dst_len, var_len, rvar_len; - if (dst == NULL || var == NULL || rvar == NULL) - return NULL; + if (dst == nullptr || var == nullptr || rvar == nullptr) + return nullptr; dst_len = mir_wstrlen(dst); var_len = mir_wstrlen(var); rvar_len = mir_wstrlen(rvar); var_start = wcsstr(dst, var); while (var_start) { if (len < (dst_len + rvar_len - var_len + 1)) - return NULL; /* Out of buf space. */ + return nullptr; /* Out of buf space. */ memmove((var_start + rvar_len), (var_start + var_len), (((dst + dst_len + 1) - (var_start + var_len)) * sizeof(wchar_t))); @@ -362,34 +362,34 @@ wchar_t* ReplaceVarsNum(wchar_t *dst, unsigned int len, int num) pcre16 *re; const char *error; int erroroffs, rc; - wchar_t *_str, *tmp, **r = NULL, **tr, *ttmp, *dstcopy; + wchar_t *_str, *tmp, **r = nullptr, **tr, *ttmp, *dstcopy; wchar_t regex[] = L"%response([#-_]([0-9]+))?%"; int ovector[9]; - re = pcre16_compile(regex, 0, &error, &erroroffs, NULL); - if (re == NULL) + re = pcre16_compile(regex, 0, &error, &erroroffs, nullptr); + if (re == nullptr) return FALSE; // [TODO] and log some error _getOptS(response, _countof(response), "Response", defaultResponse); ttmp = wcstok(response, L"\r\n"); - for (i = 0; ttmp != NULL; i ++) { + for (i = 0; ttmp != nullptr; i ++) { tr = (wchar_t**)mir_realloc(r, ((i + 1) * sizeof(wchar_t*))); - if (tr == NULL) + if (tr == nullptr) goto err_out; r = tr; r[i] = ttmp; - ttmp = wcstok(NULL, L"\r\n"); /* Move next. */ + ttmp = wcstok(nullptr, L"\r\n"); /* Move next. */ } do { _str = mir_wstrdup(dst); dstcopy = mir_wstrdup(dst); - if (_str == NULL || dstcopy == NULL) { + if (_str == nullptr || dstcopy == nullptr) { mir_free(_str); mir_free(dstcopy); goto err_out; } - rc = pcre16_exec(re, NULL, _str, (int)mir_wstrlen(_str), 0, 0, ovector, 9); + rc = pcre16_exec(re, nullptr, _str, (int)mir_wstrlen(_str), 0, 0, ovector, 9); if (rc < 0) { ret = -1; } else if (rc == 3) { @@ -432,7 +432,7 @@ int _notify(MCONTACT hContact, BYTE type, wchar_t *message, wchar_t *origmessage if (_getOptB("LogActions", defaultLogActions)) { tmp = mir_u2a(msg); tmporig = mir_u2a(origmessage); - LogToSystemHistory(tmp, origmessage ? tmporig : NULL); + LogToSystemHistory(tmp, origmessage ? tmporig : nullptr); mir_free(tmp); mir_free(tmporig); } @@ -440,15 +440,15 @@ int _notify(MCONTACT hContact, BYTE type, wchar_t *message, wchar_t *origmessage if (_NOTIFYP) { if (type == POPUP_BLOCKED) { if (_getOptB("NotifyPopupBlocked", defaultNotifyPopupBlocked)) - ShowPopup(hContact, type, NULL, msg); + ShowPopup(hContact, type, nullptr, msg); } else if (type == POPUP_APPROVED) { if (_getOptB("NotifyPopupApproved", defaultNotifyPopupApproved)) - ShowPopup(hContact, type, NULL, msg); + ShowPopup(hContact, type, nullptr, msg); } else if (type == POPUP_CHALLENGE) { if (_getOptB("NotifyPopupChallenge", defaultNotifyPopupChallenge)) - ShowPopup(hContact, type, NULL, msg); + ShowPopup(hContact, type, nullptr, msg); } else { - ShowPopup(hContact, type, NULL, msg); + ShowPopup(hContact, type, nullptr, msg); } } return 0; @@ -459,7 +459,7 @@ int LogToSystemHistory(char *message, char *origmessage) char msg[MAX_BUFFER_LENGTH]; time_t tm; - if (message == NULL) + if (message == nullptr) return 0; DBEVENTINFO dbei = {}; -- cgit v1.2.3