提交 9ceecb4d 编写于 作者: armink_ztl's avatar armink_ztl

[component][ulog] Update ulog hexdump format.

上级 c336099a
......@@ -644,12 +644,27 @@ void ulog_hexdump(const char *name, rt_size_t width, rt_uint8_t *buf, rt_size_t
#define __is_print(ch) ((unsigned int)((ch) - ' ') < 127u - ' ')
rt_size_t i, j;
rt_size_t log_len = 0;
rt_size_t log_len = 0, name_len = rt_strlen(name);
char *log_buf = NULL, dump_string[8];
int fmt_result;
RT_ASSERT(ulog.init_ok);
#ifdef ULOG_USING_FILTER
/* level filter */
#ifndef ULOG_USING_SYSLOG
if (LOG_LVL_DBG > ulog.filter.level)
{
return;
}
#else
if ((LOG_MASK(LOG_DEBUG) & ulog.filter.level) == 0)
{
return;
}
#endif /* ULOG_USING_SYSLOG */
#endif /* ULOG_USING_FILTER */
/* get log buffer */
log_buf = get_log_buf();
......@@ -659,11 +674,22 @@ void ulog_hexdump(const char *name, rt_size_t width, rt_uint8_t *buf, rt_size_t
for (i = 0, log_len = 0; i < size; i += width)
{
/* package header */
fmt_result = rt_snprintf(log_buf, ULOG_LINE_BUF_SIZE, "D/HEX %s: %04X-%04X: ", name, i, i + width);
if (i == 0)
{
log_len += ulog_strcpy(log_len, log_buf + log_len, "D/HEX ");
log_len += ulog_strcpy(log_len, log_buf + log_len, name);
log_len += ulog_strcpy(log_len, log_buf + log_len, ": ");
}
else
{
log_len = 6 + name_len + 2;
rt_memset(log_buf, ' ', log_len);
}
fmt_result = rt_snprintf(log_buf + log_len, ULOG_LINE_BUF_SIZE, "%04X-%04X: ", i, i + width);
/* calculate log length */
if ((fmt_result > -1) && (fmt_result <= ULOG_LINE_BUF_SIZE))
{
log_len = fmt_result;
log_len += fmt_result;
}
else
{
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册