Browse Source

[Minor] Core: Add support for hex encoded characters in printf

tags/1.9.0
Vsevolod Stakhov 5 years ago
parent
commit
f8d6761a36
1 changed files with 11 additions and 1 deletions
  1. 11
    1
      src/libutil/printf.c

+ 11
- 1
src/libutil/printf.c View File

@@ -979,7 +979,17 @@ rspamd_vprintf_common (rspamd_printf_append_func func,
case 'c':
c = va_arg (args, gint);
c &= 0xff;
RSPAMD_PRINTF_APPEND (&c, 1);
if (G_UNLIKELY (hex)) {
gchar hexbuf[2];
hexbuf[0] = hex == 2 ? _HEX[(c >> 4) & 0xf] :
_hex[(c >> 4) & 0xf];
hexbuf[1] = hex == 2 ? _HEX[c & 0xf] : _hex[c & 0xf];

RSPAMD_PRINTF_APPEND (hexbuf, 2);
}
else {
RSPAMD_PRINTF_APPEND (&c, 1);
}

continue;


Loading…
Cancel
Save