Explorar o código

Merge pull request #3287 from rgw5267/fix_ulog

ulogbuffer增加1,为\0预留空间
Bernard Xiong %!s(int64=5) %!d(string=hai) anos
pai
achega
20d1c13be6
Modificáronse 1 ficheiros con 4 adicións e 2 borrados
  1. 4 2
      components/utilities/ulog/ulog.c

+ 4 - 2
components/utilities/ulog/ulog.c

@@ -81,12 +81,12 @@ struct rt_ulog
     /* all backends */
     rt_slist_t backend_list;
     /* the thread log's line buffer */
-    char log_buf_th[ULOG_LINE_BUF_SIZE];
+    char log_buf_th[ULOG_LINE_BUF_SIZE + 1];
 
 #ifdef ULOG_USING_ISR_LOG
     /* the ISR log's line buffer */
     rt_base_t output_locker_isr_lvl;
-    char log_buf_isr[ULOG_LINE_BUF_SIZE];
+    char log_buf_isr[ULOG_LINE_BUF_SIZE + 1];
 #endif /* ULOG_USING_ISR_LOG */
 
 #ifdef ULOG_USING_ASYNC_OUTPUT
@@ -728,6 +728,8 @@ void ulog_hexdump(const char *tag, rt_size_t width, rt_uint8_t *buf, rt_size_t s
         }
         /* package newline sign */
         log_len += ulog_strcpy(log_len, log_buf + log_len, ULOG_NEWLINE_SIGN);
+        /*add string end sign*/
+        log_buf[log_len] = '\0';
         /* do log output */
         do_output(LOG_LVL_DBG, NULL, RT_TRUE, log_buf, log_len);
     }