fix: isprint => canprint

add a canprint() func that return true iif
char is ascii (< 0x80) and not a control char
(> 0x1F), as isprint() seems to be different
under Linux and Windows
This commit is contained in:
Stéphane Lesimple
2020-08-25 13:03:05 +02:00
parent 5ab5f9b0cb
commit 5553ed332f
9 changed files with 65 additions and 18 deletions

View File

@@ -747,8 +747,8 @@ void HexDump(unsigned char *buf, int len, int step)
for(j=0; j<step; j++)
{ if(i+j >= len) break;
if((j&0x07) == 0x07)
PrintLog("%c ", isprint(buf[i+j]) ? buf[i+j] : '.');
else PrintLog("%c", isprint(buf[i+j]) ? buf[i+j] : '.');
PrintLog("%c ", canprint(buf[i+j]) ? buf[i+j] : '.');
else PrintLog("%c", canprint(buf[i+j]) ? buf[i+j] : '.');
}
PrintLog("\n");