From 4b6b788b755bed94d5c2fb2420eeadf8093c8d67 Mon Sep 17 00:00:00 2001 From: eeff <33566201+eeff@users.noreply.github.com> Date: Fri, 22 Dec 2023 14:38:03 +0800 Subject: [PATCH] fix(core): replace path separator char in adapter log category --- src/adapter/adapter.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/src/adapter/adapter.c b/src/adapter/adapter.c index 13e09530..b49550db 100644 --- a/src/adapter/adapter.c +++ b/src/adapter/adapter.c @@ -110,6 +110,16 @@ void neu_adapter_set_error(int error) create_adapter_error = error; } +static inline zlog_category_t *get_log_category(const char *node) +{ + char name[NEU_NODE_NAME_LEN] = { 0 }; + // replace path separators + for (int i = 0; node[i]; ++i) { + name[i] = ('/' == node[i] || '\\' == node[i]) ? '_' : node[i]; + } + return zlog_get_category(name); +} + neu_adapter_t *neu_adapter_create(neu_adapter_info_t *info, bool load) { int rv = 0; @@ -206,7 +216,7 @@ neu_adapter_t *neu_adapter_create(neu_adapter_info_t *info, bool load) common->adapter = adapter; common->adapter_callbacks = &adapter->cb_funs; common->link_state = NEU_NODE_LINK_STATE_DISCONNECTED; - common->log = zlog_get_category(adapter->name); + common->log = get_log_category(adapter->name); strcpy(common->name, adapter->name); zlog_level_switch(common->log, default_log_level); @@ -277,7 +287,7 @@ int neu_adapter_rename(neu_adapter_t *adapter, const char *new_name) return NEU_ERR_EINTERNAL; } - zlog_category_t *log = zlog_get_category(name); + zlog_category_t *log = get_log_category(name); if (NULL == log) { free(name); free(old_name);