소스 검색

[Minor] Skip double message processing

tags/2.1
Vsevolod Stakhov 4 년 전
부모
커밋
edf70f59c1
1개의 변경된 파일9개의 추가작업 그리고 1개의 파일을 삭제
  1. 9
    1
      src/lua/lua_task.c

+ 9
- 1
src/lua/lua_task.c 파일 보기

@@ -1326,11 +1326,19 @@ lua_task_process_message (lua_State *L)
{
LUA_TRACE_POINT;
struct rspamd_task *task = lua_check_task (L, 1);
gboolean enforce = FALSE;

if (task != NULL) {
if (task->msg.len > 0) {
if (lua_isboolean (L, 2)) {
enforce = lua_toboolean (L, 2);
}

if (rspamd_message_parse (task)) {
if (!(task->flags & RSPAMD_TASK_FLAG_SKIP_PROCESS)) {
if (enforce ||
(!(task->flags & RSPAMD_TASK_FLAG_SKIP_PROCESS) &&
!(task->processed_stages & RSPAMD_TASK_STAGE_PROCESS_MESSAGE))) {

lua_pushboolean (L, TRUE);
rspamd_message_process (task);
task->processed_stages |= RSPAMD_TASK_STAGE_PROCESS_MESSAGE;

Loading…
취소
저장