From: Bruno Haible Date: Thu, 10 Nov 2011 01:41:17 +0000 (+0100) Subject: ptsname_r tests: Fix bugs. X-Git-Tag: v0.1~1454 X-Git-Url: http://erislabs.net/gitweb/?p=gnulib.git;a=commitdiff_plain;h=44e24aa42fb9e808f25767f5ce555d6844efc1c8 ptsname_r tests: Fix bugs. * tests/test-ptsname_r.c (test_errors): Change return type to 'void'. Fix ptsname_r calls. Reduce loop rounds to a reasonable amount. --- diff --git a/ChangeLog b/ChangeLog index f8c765bfe..ee3767130 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2011-11-09 Bruno Haible + + ptsname_r tests: Fix bugs. + * tests/test-ptsname_r.c (test_errors): Change return type to 'void'. + Fix ptsname_r calls. Reduce loop rounds to a reasonable amount. + 2011-11-09 Paul Eggert fstatat: work with cross-compilation diff --git a/tests/test-ptsname_r.c b/tests/test-ptsname_r.c index a97b179fb..5906e2e2a 100644 --- a/tests/test-ptsname_r.c +++ b/tests/test-ptsname_r.c @@ -53,20 +53,24 @@ same_slave (const char *slave_name1, const char *slave_name2) && SAME_INODE (statbuf1, statbuf2))); } -static int +static void test_errors (int fd, const char *slave) { char buffer[256]; size_t len; - int result; + size_t buflen_max; size_t buflen; + int result; len = strlen (slave); - for (buflen = 0; buflen <= sizeof buffer; buflen++) + buflen_max = len + 5; + if (buflen_max > sizeof buffer) + buflen_max = sizeof buffer; + for (buflen = 0; buflen <= buflen_max; buflen++) { - errno = 0; memset (buffer, 'X', sizeof buffer); - result = ptsname_r (fd, buffer, len); + errno = 0; + result = ptsname_r (fd, buffer, buflen); if (buflen > len) { ASSERT (result == 0);