ソースを参照

[Fix] Treat `hs_allocate_scratch` errors as non-fatal

Issue: #4409
tags/3.5
Vsevolod Stakhov 1年前
コミット
33b3e51406
コミッターのメールアドレスに関連付けられたアカウントが存在しません
1個のファイルの変更16行の追加2行の削除
  1. 16
    2
      src/libserver/re_cache.c

+ 16
- 2
src/libserver/re_cache.c ファイルの表示

@@ -2594,8 +2594,22 @@ rspamd_re_cache_load_hyperscan (struct rspamd_re_cache *cache,

if ((ret = hs_alloc_scratch (rspamd_hyperscan_get_database(re_class->hs_db),
&re_class->hs_scratch)) != HS_SUCCESS) {
msg_err_re_cache ("fatal error: cannot allocate scratch for %s: %d", path, ret);
g_abort();
rspamd_hyperscan_free (re_class->hs_db);
if (!try_load) {
msg_err_re_cache ("bad hs database in %s; error code: %d", path, ret);
}
else {
msg_debug_re_cache ("bad hs database in %s; error code: %d", path, ret);
}
g_free (hs_ids);
g_free (hs_flags);

re_class->hs_ids = NULL;
re_class->hs_scratch = NULL;
re_class->hs_db = NULL;
all_valid = FALSE;

continue;
}

/*

読み込み中…
キャンセル
保存