diff --git a/lib/roken/strftime.c b/lib/roken/strftime.c index ffb2fc276..08c5be184 100644 --- a/lib/roken/strftime.c +++ b/lib/roken/strftime.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 1999 - 2000 Kungliga Tekniska Högskolan + * Copyright (c) 1999 - 2001 Kungliga Tekniska Högskolan * (Royal Institute of Technology, Stockholm, Sweden). * All rights reserved. * @@ -172,7 +172,7 @@ strftime (char *buf, size_t maxsize, const char *format, const struct tm *tm) { size_t n = 0; - size_t ret; + int ret; while (*format != '\0' && n < maxsize) { if (*format == '%') { @@ -381,7 +381,7 @@ strftime (char *buf, size_t maxsize, const char *format, "%%%c", *format); break; } - if (ret >= maxsize - n) + if (ret < 0 || ret >= maxsize - n) return 0; n += ret; buf += ret;