ble_mesh: Fix wrong log output with bt_hex
- This issue was introduced in the commit: a788e7cd3d
which updated the bt_hex() function incorrectly.
- And in bt_hex(), we use 2 for the two-dimensional array, because currently
at most two bt_hex() will be used at the same time. Also this will save
some DRAM compared with using 4.
This commit is contained in:
parent
820e0ead52
commit
55f48877a4
1 changed files with 7 additions and 2 deletions
|
@ -17,11 +17,16 @@
|
|||
const char *bt_hex(const void *buf, size_t len)
|
||||
{
|
||||
static const char hex[] = "0123456789abcdef";
|
||||
static char str[129];
|
||||
static char hexbufs[2][129];
|
||||
static u8_t curbuf;
|
||||
const u8_t *b = buf;
|
||||
char *str = NULL;
|
||||
int i;
|
||||
|
||||
len = MIN(len, (sizeof(str) - 1) / 2);
|
||||
str = hexbufs[curbuf++];
|
||||
curbuf %= ARRAY_SIZE(hexbufs);
|
||||
|
||||
len = MIN(len, (sizeof(hexbufs[0]) - 1) / 2);
|
||||
|
||||
for (i = 0; i < len; i++) {
|
||||
str[i * 2] = hex[b[i] >> 4];
|
||||
|
|
Loading…
Reference in a new issue