Fix unportable use of isprint().
We must cast the arguments of <ctype.h> functions to unsigned char to avoid problems where char is signed. Speaking of which, considering that this *is* a <ctype.h> function, it's rather remarkable that we aren't seeing more complaints about not having included that header. Per buildfarm.
This commit is contained in:
parent
f1be740a99
commit
9e20406dd8
|
@ -14,6 +14,7 @@
|
|||
|
||||
#include "postgres_fe.h"
|
||||
|
||||
#include <ctype.h>
|
||||
#include <limits.h>
|
||||
#include <time.h>
|
||||
|
||||
|
@ -28,6 +29,7 @@
|
|||
#include "libpq-int.h"
|
||||
#include "port/pg_bswap.h"
|
||||
|
||||
|
||||
/* Enable tracing */
|
||||
void
|
||||
PQtrace(PGconn *conn, FILE *debug_port)
|
||||
|
@ -102,7 +104,7 @@ pqTraceOutputByte1(FILE *pfdebug, const char *data, int *cursor)
|
|||
* Show non-printable data in hex format, including the terminating \0
|
||||
* that completes ErrorResponse and NoticeResponse messages.
|
||||
*/
|
||||
if (!isprint(*v))
|
||||
if (!isprint((unsigned char) *v))
|
||||
fprintf(pfdebug, " \\x%02x", *v);
|
||||
else
|
||||
fprintf(pfdebug, " %c", *v);
|
||||
|
@ -186,7 +188,7 @@ pqTraceOutputNchar(FILE *pfdebug, int len, const char *data, int *cursor)
|
|||
|
||||
for (next = i = 0; i < len; ++i)
|
||||
{
|
||||
if (isprint(v[i]))
|
||||
if (isprint((unsigned char) v[i]))
|
||||
continue;
|
||||
else
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue