diff --git a/XUtils.c b/XUtils.c index 743d98bf..cd5edb91 100644 --- a/XUtils.c +++ b/XUtils.c @@ -184,13 +184,13 @@ int xAsprintf(char** strp, const char* fmt, ...) { return r; } -int xSnprintf(char* buf, int len, const char* fmt, ...) { +int xSnprintf(char* buf, size_t len, const char* fmt, ...) { va_list vl; va_start(vl, fmt); int n = vsnprintf(buf, len, fmt, vl); va_end(vl); - if (n < 0 || n >= len) { + if (n < 0 || (size_t)n >= len) { fail(); } diff --git a/XUtils.h b/XUtils.h index e0aeebe2..19cfadb3 100644 --- a/XUtils.h +++ b/XUtils.h @@ -59,7 +59,7 @@ ATTR_FORMAT(printf, 2, 3) int xAsprintf(char** strp, const char* fmt, ...); ATTR_FORMAT(printf, 3, 4) -int xSnprintf(char* buf, int len, const char* fmt, ...); +int xSnprintf(char* buf, size_t len, const char* fmt, ...); char* xStrdup(const char* str) ATTR_NONNULL;