fix 拦截器level参数无效 (#15)

* #feat 增强Fatal级别的底色,修改logging类的方法

* 更新版本号

* 加入test脚本

* fix:conanfile

* test action

* 修复错别字

* add test on windows action

* fix test on windows action

* fix action on windows

* fix

* fix 内存分配错误

* fix msvc 不支持中文注释,删除中文注释

* test on windows and test  chinese char

* ersion 0.2.4

* feature:根据文件大小分割日志

* fix:内存泄露

* fix:使用char偏移单位

* add english brief

* 修改api函数名,加入Default关键字,减除歧义

* Multiple substring interceptors

* 更新版本号

* #fix 拦截器对level参数无效

* fix
This commit is contained in:
youmetme
2024-11-21 16:02:40 +08:00
committed by GitHub
parent cc53e07788
commit 56e1ac52ff
5 changed files with 27 additions and 17 deletions

View File

@@ -24,8 +24,10 @@ static void get_next(char *str, int *next) {
}
static bool kmp_search(char *substr, char *master) {
if(substr == NULL)return true; //空串全匹配
if(master == NULL)return false;
if (substr == NULL)
return true; // 空串全匹配
if (master == NULL)
return false;
int i = 0;
int j = 0;
int substrlen = strlen(substr);
@@ -54,16 +56,19 @@ static bool kmp_search(char *substr, char *master) {
}
static bool _disposeSubstring(log_Interceptor *interceptor,
char *level,
log_level level,
const char *message,
...) {
int count = 0;
keywords_t *keyword = (keywords_t *)(interceptor + 1);
if (keyword->key == NULL && keyword->next == NULL)
if (keyword->key == NULL && keyword->next == NULL) {
if (level <= interceptor->level)
return true;
return false;
}
while (keyword != NULL) {
while (keyword != NULL && level <= interceptor->level) {
if (kmp_search(keyword->key, (char *)message))
return true;
keyword = keyword->next;