From d1a5466da874386f7de99d381513e6779a331c7e Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Wed, 8 Aug 2001 02:52:43 +0000 Subject: Update. 2001-08-07 Jakub Jelinek * sysdeps/unix/seekdir.c (seekdir): Set dirp->filepos. * dirent/tst-seekdir.c (main): Check whether telldir right after seekdir returns 2nd argument given to seekdir. 2001-08-07 Franz Sirl * dlfcn/Makefile (tststatic-ENV): Add $(common-objpfx) to LD_LIBRARY_PATH. --- dirent/tst-seekdir.c | 26 +++++++++++++++++--------- 1 file changed, 17 insertions(+), 9 deletions(-) (limited to 'dirent/tst-seekdir.c') diff --git a/dirent/tst-seekdir.c b/dirent/tst-seekdir.c index f4d99ae632..b833c30705 100644 --- a/dirent/tst-seekdir.c +++ b/dirent/tst-seekdir.c @@ -5,20 +5,21 @@ int main (int argc, char *argv[]) { - DIR * dirp; long int save3 = 0; + long int cur; int i = 0; + int result = 0; struct dirent *dp; - dirp = opendir("."); - for (dp = readdir(dirp); dp != NULL; dp = readdir(dirp)) + dirp = opendir ("."); + for (dp = readdir (dirp); dp != NULL; dp = readdir (dirp)) { /* save position 3 (after fourth entry) */ if (i++ == 3) - save3 = telldir(dirp); + save3 = telldir (dirp); - printf("%s\n", dp->d_name); + printf ("%s\n", dp->d_name); /* stop at 400 (just to make sure dirp->__offset and dirp->__size are scrambled */ @@ -26,17 +27,24 @@ main (int argc, char *argv[]) break; } - printf("going back past 4-th entry...\n"); + printf ("going back past 4-th entry...\n"); /* go back to saved entry */ seekdir (dirp, save3); + /* Check whether telldir equals to save3 now. */ + cur = telldir (dirp); + if (cur != save3) + { + printf ("seekdir (d, %ld); telldir (d) == %ld\n", save3, cur); + result = 1; + } /* print remaining files (3-last) */ - for (dp = readdir(dirp); dp != NULL; dp = readdir(dirp)) - printf("%s\n", dp->d_name); + for (dp = readdir (dirp); dp != NULL; dp = readdir (dirp)) + printf ("%s\n", dp->d_name); closedir (dirp); - return 0; + return result; } -- cgit v1.2.1