diff -ru heimdal-0.6.3.orig/lib/roken/snprintf-test.c heimdal-0.6.3/lib/roken/snprintf-test.c --- heimdal-0.6.3.orig/lib/roken/snprintf-test.c 2001-09-13 01:01:16.000000000 +0000 +++ heimdal-0.6.3/lib/roken/snprintf-test.c 2005-03-31 12:40:37.578912592 +0000 @@ -49,14 +49,19 @@ va_start (ap, format); ret = vsnprintf (buf1, sizeof(buf1), format, ap); + va_end (ap); + if (ret >= sizeof(buf1)) errx (1, "increase buf and try again"); + + va_start (ap, format); vsprintf (buf2, format, ap); + va_end (ap); + ret = strcmp (buf1, buf2); if (ret) printf ("failed: format = \"%s\", \"%s\" != \"%s\"\n", format, buf1, buf2); - va_end (ap); return ret; }