summaryrefslogtreecommitdiff
path: root/libbb
diff options
context:
space:
mode:
Diffstat (limited to 'libbb')
-rw-r--r--libbb/dump.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/libbb/dump.c b/libbb/dump.c
index db91fcf..5941ef9 100644
--- a/libbb/dump.c
+++ b/libbb/dump.c
@@ -464,11 +464,9 @@ static const char conv_str[] ALIGN1 =
"\v" "\\""v""\0"
;
-
static void conv_c(PR *pr, unsigned char *p)
{
const char *str = conv_str;
- char buf[10];
do {
if (*p == *str) {
@@ -482,7 +480,9 @@ static void conv_c(PR *pr, unsigned char *p)
*pr->cchar = 'c';
printf(pr->fmt, *p);
} else {
- sprintf(buf, "%03o", (int) *p);
+ char buf[4];
+ /* gcc-8.0.1 needs lots of casts to shut up */
+ sprintf(buf, "%03o", (unsigned)(uint8_t)*p);
str = buf;
strpr:
*pr->cchar = 's';