From a479b3c1e56ece208e00c7a75a0cf656e6310dbb Mon Sep 17 00:00:00 2001
From: "Dmitriy A. Gerasimov" <dmitriy.gerasimov@demlabs.net>
Date: Thu, 26 Mar 2020 23:36:38 +0700
Subject: [PATCH] [*] Some fixes and updates

---
 include/dap_common.h |  5 ----
 src/dap_common.c     | 60 +++++++++++++++++++++++++++-----------------
 2 files changed, 37 insertions(+), 28 deletions(-)

diff --git a/include/dap_common.h b/include/dap_common.h
index 50e35ee..eb05d6f 100755
--- a/include/dap_common.h
+++ b/include/dap_common.h
@@ -343,13 +343,8 @@ void dap_log_set_max_item(unsigned int a_max);
 // get logs from list
 char *dap_log_get_item(time_t a_start_time, int a_limit);
 
-#ifdef DAP_LOG_MT
 void _log_it( const char * log_tag, enum dap_log_level, const char * format,... );
 #define log_it( _log_level, ...) _log_it( LOG_TAG, _log_level, ##__VA_ARGS__)
-#else
-void _log_it2( const char *log_tag, enum dap_log_level ll, const char *fmt,... );
-#define log_it( _log_level, ...) _log_it2( LOG_TAG, _log_level, ##__VA_ARGS__)
-#endif
 //void _vlog_it( const char * log_tag, uint32_t taglen, enum dap_log_level, const char * format, va_list ap );
 
 //#define vlog_it( a_log_level, a_format, a_ap ) _vlog_it( LOG_TAG, sizeof(LOG_TAG)-1, a_log_level, a_format, a_ap )
diff --git a/src/dap_common.c b/src/dap_common.c
index 2deac60..847447a 100755
--- a/src/dap_common.c
+++ b/src/dap_common.c
@@ -140,7 +140,7 @@ static char s_last_error[LAST_ERROR_MAX]    = {'\0'},
     s_log_file_path[MAX_PATH]               = {'\0'},
     s_log_tag_fmt_str[10]                   = {'\0'};
 
-static enum dap_log_level dap_log_level = L_DEBUG;
+static enum dap_log_level s_dap_log_level = L_DEBUG;
 static FILE *s_log_file = NULL;
 
 #if DAP_LOG_USE_SPINLOCK
@@ -149,7 +149,7 @@ static FILE *s_log_file = NULL;
     static pthread_mutex_t s_log_mutex = PTHREAD_MUTEX_INITIALIZER;
 #endif
 static pthread_cond_t s_log_cond = PTHREAD_COND_INITIALIZER;
-static volatile int count = 0;
+static volatile int s_log_count = 0;
 
 static pthread_t s_log_thread = 0;
 static void  *s_log_thread_proc(void *arg);
@@ -160,7 +160,7 @@ typedef struct log_str_t {
     struct log_str_t *prev, *next;
 } log_str_t;
 
-static log_str_t *log_buffer = NULL;
+static log_str_t *s_log_buffer = NULL;
 static char* s_appname = NULL;
 
 DAP_STATIC_INLINE void s_update_log_time(char *a_datetime_str) {
@@ -174,7 +174,7 @@ DAP_STATIC_INLINE void s_update_log_time(char *a_datetime_str) {
  * @param[in] ll logging level
  */
 void dap_log_level_set( enum dap_log_level a_ll ) {
-    dap_log_level = a_ll;
+    s_dap_log_level = a_ll;
 }
 
 /**
@@ -198,7 +198,7 @@ void dap_set_appname(const char * a_appname)
 }
 
 enum dap_log_level dap_log_level_get( void ) {
-    return dap_log_level ;
+    return s_dap_log_level ;
 }
 
 /**
@@ -283,9 +283,10 @@ void dap_common_deinit( ) {
  * @return
  */
 static void *s_log_thread_proc(void *arg) {
+    (void) arg;
     for ( ; !s_log_term_signal; ) {
         pthread_mutex_lock(&s_log_mutex);
-        for ( ; count == 0; ) {
+        for ( ; s_log_count == 0; ) {
             pthread_cond_wait(&s_log_cond, &s_log_mutex);
         }
         log_str_t *elem, *tmp;
@@ -295,14 +296,14 @@ static void *s_log_thread_proc(void *arg) {
                 s_log_file = fopen(s_log_file_path, "a");
             }
         }
-        DL_FOREACH_SAFE(log_buffer, elem, tmp) {
+        DL_FOREACH_SAFE(s_log_buffer, elem, tmp) {
             if(s_log_file)
                 fwrite(elem->str + elem->offset, strlen(elem->str) - elem->offset, 1, s_log_file);
             fwrite(elem->str, strlen(elem->str), 1, stdout);
 
-            DL_DELETE(log_buffer, elem);
+            DL_DELETE(s_log_buffer, elem);
             DAP_FREE(elem);
-            --count;
+            --s_log_count;
 
             if(s_log_file)
                 fflush(s_log_file);
@@ -315,28 +316,41 @@ static void *s_log_thread_proc(void *arg) {
     pthread_exit(NULL);
 }
 
-void _log_it(const char *log_tag, enum dap_log_level ll, const char *fmt, ...) {
-    if ( ll < dap_log_level || ll >= 16 || !log_tag )
+/**
+ * @brief _log_it
+ * @param log_tag
+ * @param ll
+ * @param fmt
+ */
+void _log_it(const char *a_log_tag, enum dap_log_level a_ll, const char *a_fmt, ...) {
+    if ( a_ll < s_dap_log_level || a_ll >= 16 || !a_log_tag )
         return;
-    log_str_t *log_string = DAP_NEW_Z(log_str_t);
-    strncpy(log_string->str, s_ansi_seq_color[ll],sizeof (log_string->str)-1);
-    log_string->offset = s_ansi_seq_color_len[ll];
-    s_update_log_time(log_string->str + log_string->offset);
-    size_t offset = strlen(log_string->str);
-    offset += dap_snprintf(log_string->str + offset, sizeof (log_string->str) -offset, "%s[%s%s", s_log_level_tag[ll], log_tag, "] ");
+    log_str_t *l_log_string = DAP_NEW_Z(log_str_t);
+    strncpy(l_log_string->str, s_ansi_seq_color[a_ll],sizeof (l_log_string->str)-1);
+    l_log_string->offset = s_ansi_seq_color_len[a_ll];
+    s_update_log_time(l_log_string->str + l_log_string->offset);
+    size_t offset = strlen(l_log_string->str);
+    offset += dap_snprintf(l_log_string->str + offset, sizeof (l_log_string->str) -offset, "%s[%s%s", s_log_level_tag[a_ll], a_log_tag, "] ");
     va_list va;
-    va_start( va, fmt );
-    offset += dap_vsnprintf(log_string->str + offset,sizeof (log_string->str) -offset, fmt, va);
+    va_start( va, a_fmt );
+    offset += dap_vsnprintf(l_log_string->str + offset,sizeof (l_log_string->str) -offset, a_fmt, va);
     va_end( va );
-    memcpy(&log_string->str[offset], "\n", 1);
+    memcpy(&l_log_string->str[offset], "\n", 1);
     pthread_mutex_lock(&s_log_mutex);
-    DL_APPEND(log_buffer, log_string);
-    ++count;
+    DL_APPEND(s_log_buffer, l_log_string);
+    ++s_log_count;
     pthread_cond_signal(&s_log_cond);
     pthread_mutex_unlock(&s_log_mutex);
 }
 
-char *dap_log_get_item(time_t a_start_time, int a_limit) {
+/**
+ * @brief dap_log_get_item
+ * @param a_start_time
+ * @param a_limit
+ * @return
+ */
+char *dap_log_get_item(time_t a_start_time, int a_limit)
+{
    return NULL; // TODO
 }
 
-- 
GitLab