X-Git-Url: https://erislabs.net/gitweb/?a=blobdiff_plain;f=tests%2Ftest-fdopendir.c;h=a9e2a9312b2dc5aa475f89e1ba819c5ea80091bd;hb=5068051817bc09c088f31d3627956bfe5086b130;hp=7e0b3ee9bc50dd55da32d6cad9be010662846d78;hpb=441aa3044f43e5572f58c354f01e6bc070acd5c7;p=gnulib.git diff --git a/tests/test-fdopendir.c b/tests/test-fdopendir.c index 7e0b3ee9b..a9e2a9312 100644 --- a/tests/test-fdopendir.c +++ b/tests/test-fdopendir.c @@ -1,5 +1,5 @@ /* Test opening a directory stream from a file descriptor. - Copyright (C) 2009 Free Software Foundation, Inc. + Copyright (C) 2009-2013 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -20,30 +20,24 @@ #include +#include "signature.h" +SIGNATURE_CHECK (fdopendir, DIR *, (int)); + #include #include -#include -#include #include -#define ASSERT(expr) \ - do \ - { \ - if (!(expr)) \ - { \ - fprintf (stderr, "%s:%d: assertion failed\n", __FILE__, __LINE__); \ - fflush (stderr); \ - abort (); \ - } \ - } \ - while (0) +#include "progname.h" +#include "macros.h" int -main (void) +main (int argc _GL_UNUSED, char *argv[]) { DIR *d; int fd; + set_program_name (argv[0]); + /* A non-directory cannot be turned into a directory stream. */ fd = open ("test-fdopendir.tmp", O_RDONLY | O_CREAT, 0600); ASSERT (0 <= fd); @@ -54,9 +48,17 @@ main (void) ASSERT (unlink ("test-fdopendir.tmp") == 0); /* A bad fd cannot be turned into a stream. */ - errno = 0; - ASSERT (fdopendir (-1) == NULL); - ASSERT (errno == EBADF); + { + errno = 0; + ASSERT (fdopendir (-1) == NULL); + ASSERT (errno == EBADF); + } + { + close (99); + errno = 0; + ASSERT (fdopendir (99) == NULL); + ASSERT (errno == EBADF); + } /* This should work. */ fd = open (".", O_RDONLY);