From c6a1e12b720ffc1bd310f842bd909090fa40cb7e Mon Sep 17 00:00:00 2001 From: Elsa-is-My-Muse Date: Mon, 27 May 2024 14:56:53 +0800 Subject: [PATCH] =?UTF-8?q?1.elog.c=20=E5=BA=93=E4=B8=AD=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E4=BA=86=E4=B8=80=E5=B1=82=E8=BD=AF=E4=BB=B6=E9=94=81,?= =?UTF-8?q?=E4=BB=A5=E9=98=B2=E6=AD=A2=E7=94=A8=E6=88=B7=E5=9C=A8=E8=B0=83?= =?UTF-8?q?=E7=94=A8=20lock=5Fport=20=E6=8E=A5=E5=8F=A3=E5=87=BD=E6=95=B0?= =?UTF-8?q?=E6=97=B6,=E9=87=8D=E5=A4=8D=E8=BF=9B=E5=85=A5=E4=B8=B4?= =?UTF-8?q?=E7=95=8C=E5=8C=BA,=E4=BB=8E=E8=80=8C=E9=81=BF=E5=85=8D?= =?UTF-8?q?=E7=A8=8B=E5=BA=8F=E5=B4=A9=E6=BA=83.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Elsa-is-My-Muse --- easylogger/inc/elog.h | 1 + easylogger/src/elog.c | 6 +++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/easylogger/inc/elog.h b/easylogger/inc/elog.h index 719f4fb..91c0756 100755 --- a/easylogger/inc/elog.h +++ b/easylogger/inc/elog.h @@ -163,6 +163,7 @@ typedef struct { bool output_lock_enabled; bool output_is_locked_before_enable; bool output_is_locked_before_disable; + bool output_is_locked; #ifdef ELOG_COLOR_ENABLE bool text_color_enabled; diff --git a/easylogger/src/elog.c b/easylogger/src/elog.c index 4b8fd5a..29c3362 100755 --- a/easylogger/src/elog.c +++ b/easylogger/src/elog.c @@ -367,7 +367,10 @@ void elog_set_filter_kw(const char *keyword) { */ void elog_output_lock(void) { if (elog.output_lock_enabled) { - elog_port_output_lock(); + if (0 == elog.output_is_locked) { + elog_port_output_lock(); + elog.output_is_locked = 1; + } elog.output_is_locked_before_disable = true; } else { elog.output_is_locked_before_enable = true; @@ -380,6 +383,7 @@ void elog_output_lock(void) { void elog_output_unlock(void) { if (elog.output_lock_enabled) { elog_port_output_unlock(); + elog.output_is_locked = 0; elog.output_is_locked_before_disable = false; } else { elog.output_is_locked_before_enable = false; -- Gitee