This is the mail archive of the glibc-cvs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

GNU C Library master sources branch master updated. glibc-2.26.9000-681-g4484b9e


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, master has been updated
       via  4484b9e29656980f18bb0fc8cdb6b1bbe5364f21 (commit)
      from  68fe16dd327c895c08b9ee443b234c49c13b36e9 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=4484b9e29656980f18bb0fc8cdb6b1bbe5364f21

commit 4484b9e29656980f18bb0fc8cdb6b1bbe5364f21
Author: Florian Weimer <fweimer@redhat.com>
Date:   Mon Oct 30 15:48:33 2017 +0100

    Assume that _DIRENT_HAVE_D_TYPE is always defined.
    
    References remain in io/fts.c, io/ftw.c, posix/glob.c,
    sysdeps/posix/getcwd.c.  These files are (potentially) externally
    shared.

diff --git a/ChangeLog b/ChangeLog
index a36b0b4..f0921f8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,20 @@
 2017-10-30  Florian Weimer  <fweimer@redhat.com>
 
+	* elf/ldconfig.c (search_dir): Assume that _DIRENT_HAVE_D_TYPE is
+	always defined.
+	* io/tst-mkdirat.c (do_test): Likewise.
+	* io/tst-mkfifoat.c (do_test): Likewise.
+	* io/tst-mknodat.c (do_test): Likewise.
+	* locale/programs/charmap-dir.c (charmap_readdir): Likewise.
+	* locale/programs/locale.c (select_dirs): Likewise.
+	* locale/programs/locarchive.c (add_locales_to_archive): Likewise.
+	* posix/bug-glob2.c (my_readdir): Likewise.
+	* posix/tst-dir.c (main): Likewise.
+	* posix/tst-glob_lstat_compat.c (my_readdir): Likewise.
+	* posix/tst-gnuglob-skeleton.c (my_readdir): Likewise.
+
+2017-10-30  Florian Weimer  <fweimer@redhat.com>
+
 	* string/strings.h (ffsl, ffsll): Declare under __USE_MISC, not
 	just __USE_GNU.
 
diff --git a/elf/ldconfig.c b/elf/ldconfig.c
index 99caf9e..8904235 100644
--- a/elf/ldconfig.c
+++ b/elf/ldconfig.c
@@ -710,25 +710,20 @@ search_dir (const struct dir_entry *entry)
   while ((direntry = readdir64 (dir)) != NULL)
     {
       int flag;
-#ifdef _DIRENT_HAVE_D_TYPE
       /* We only look at links and regular files.  */
       if (direntry->d_type != DT_UNKNOWN
 	  && direntry->d_type != DT_LNK
 	  && direntry->d_type != DT_REG
 	  && direntry->d_type != DT_DIR)
 	continue;
-#endif /* _DIRENT_HAVE_D_TYPE  */
       /* Does this file look like a shared library or is it a hwcap
 	 subdirectory?  The dynamic linker is also considered as
 	 shared library.  */
       if (((strncmp (direntry->d_name, "lib", 3) != 0
 	    && strncmp (direntry->d_name, "ld-", 3) != 0)
 	   || strstr (direntry->d_name, ".so") == NULL)
-	  && (
-#ifdef _DIRENT_HAVE_D_TYPE
-	      direntry->d_type == DT_REG ||
-#endif
-	      !is_hwcap_platform (direntry->d_name)))
+	  && (direntry->d_type == DT_REG
+	      || !is_hwcap_platform (direntry->d_name)))
 	continue;
 
       size_t len = strlen (direntry->d_name);
@@ -765,12 +760,10 @@ search_dir (const struct dir_entry *entry)
 	}
 
       struct stat64 lstat_buf;
-#ifdef _DIRENT_HAVE_D_TYPE
       /* We optimize and try to do the lstat call only if needed.  */
       if (direntry->d_type != DT_UNKNOWN)
 	lstat_buf.st_mode = DTTOIF (direntry->d_type);
       else
-#endif
 	if (__glibc_unlikely (lstat64 (real_file_name, &lstat_buf)))
 	  {
 	    error (0, errno, _("Cannot lstat %s"), file_name);
@@ -825,9 +818,6 @@ search_dir (const struct dir_entry *entry)
 	  new_entry->path = xstrdup (file_name);
 	  new_entry->flag = entry->flag;
 	  new_entry->next = NULL;
-#ifdef _DIRENT_HAVE_D_TYPE
-	  /* We have filled in lstat only #ifndef
-	     _DIRENT_HAVE_D_TYPE.  Fill it in if needed.  */
 	  if (!is_link
 	      && direntry->d_type != DT_UNKNOWN
 	      && __builtin_expect (lstat64 (real_file_name, &lstat_buf), 0))
@@ -837,7 +827,6 @@ search_dir (const struct dir_entry *entry)
 	      free (new_entry);
 	      continue;
 	    }
-#endif
 	  new_entry->ino = lstat_buf.st_ino;
 	  new_entry->dev = lstat_buf.st_dev;
 	  add_single_dir (new_entry, 0);
@@ -860,7 +849,6 @@ search_dir (const struct dir_entry *entry)
       else
 	real_name = real_file_name;
 
-#ifdef _DIRENT_HAVE_D_TYPE
       /* Call lstat64 if not done yet.  */
       if (!is_link
 	  && direntry->d_type != DT_UNKNOWN
@@ -869,7 +857,6 @@ search_dir (const struct dir_entry *entry)
 	  error (0, errno, _("Cannot lstat %s"), file_name);
 	  continue;
 	}
-#endif
 
       /* First search whether the auxiliary cache contains this
 	 library already and it's not changed.  */
diff --git a/io/tst-mkdirat.c b/io/tst-mkdirat.c
index a960c66..605e51e 100644
--- a/io/tst-mkdirat.c
+++ b/io/tst-mkdirat.c
@@ -131,13 +131,11 @@ do_test (void)
     if (strcmp (d->d_name, "some-dir") == 0)
       {
 	has_some_dir = true;
-#ifdef _DIRENT_HAVE_D_TYPE
 	if (d->d_type != DT_UNKNOWN && d->d_type != DT_DIR)
 	  {
 	    puts ("d_type for some-dir wrong");
 	    return 1;
 	  }
-#endif
       }
     else if (strcmp (d->d_name, ".") != 0 && strcmp (d->d_name, "..") != 0)
       {
diff --git a/io/tst-mkfifoat.c b/io/tst-mkfifoat.c
index d87b587..c9239dc 100644
--- a/io/tst-mkfifoat.c
+++ b/io/tst-mkfifoat.c
@@ -131,13 +131,11 @@ do_test (void)
     if (strcmp (d->d_name, "some-fifo") == 0)
       {
 	has_some_fifo = true;
-#ifdef _DIRENT_HAVE_D_TYPE
 	if (d->d_type != DT_UNKNOWN && d->d_type != DT_FIFO)
 	  {
 	    puts ("d_type for some-fifo wrong");
 	    return 1;
 	  }
-#endif
       }
     else if (strcmp (d->d_name, ".") != 0 && strcmp (d->d_name, "..") != 0)
       {
diff --git a/io/tst-mknodat.c b/io/tst-mknodat.c
index 9d58fdb..88a98ca 100644
--- a/io/tst-mknodat.c
+++ b/io/tst-mknodat.c
@@ -131,13 +131,11 @@ do_test (void)
     if (strcmp (d->d_name, "some-fifo") == 0)
       {
 	has_some_fifo = true;
-#ifdef _DIRENT_HAVE_D_TYPE
 	if (d->d_type != DT_UNKNOWN && d->d_type != DT_FIFO)
 	  {
 	    puts ("d_type for some-fifo wrong");
 	    return 1;
 	  }
-#endif
       }
     else if (strcmp (d->d_name, ".") != 0 && strcmp (d->d_name, "..") != 0)
       {
diff --git a/locale/programs/charmap-dir.c b/locale/programs/charmap-dir.c
index a9212b7..42639fb 100644
--- a/locale/programs/charmap-dir.c
+++ b/locale/programs/charmap-dir.c
@@ -115,11 +115,9 @@ charmap_readdir (CHARMAP_DIR *cdir)
       stpcpy (stpcpy (cdir->pathname, cdir->directory), dirent->d_name);
       filename = cdir->pathname + cdir->directory_len;
 
-#ifdef _DIRENT_HAVE_D_TYPE
       if (dirent->d_type != DT_UNKNOWN && dirent->d_type != DT_LNK)
         mode = DTTOIF (dirent->d_type);
       else
-#endif
         {
           struct stat64 statbuf;
 
diff --git a/locale/programs/locale.c b/locale/programs/locale.c
index 939214d..de2a305 100644
--- a/locale/programs/locale.c
+++ b/locale/programs/locale.c
@@ -316,11 +316,9 @@ select_dirs (const struct dirent *dirent)
     {
       mode_t mode = 0;
 
-#ifdef _DIRENT_HAVE_D_TYPE
       if (dirent->d_type != DT_UNKNOWN && dirent->d_type != DT_LNK)
 	mode = DTTOIF (dirent->d_type);
       else
-#endif
 	{
 	  struct stat64 st;
 	  char buf[sizeof (COMPLOCALEDIR)
diff --git a/locale/programs/locarchive.c b/locale/programs/locarchive.c
index 633c59b..50e975d 100644
--- a/locale/programs/locarchive.c
+++ b/locale/programs/locarchive.c
@@ -1385,17 +1385,13 @@ add_locales_to_archive (size_t nlist, char *list[], bool replace)
 		     a directory we have to look at a file with the
 		     prefix "SYS_".  Otherwise we have found what we
 		     are looking for.  */
-#ifdef _DIRENT_HAVE_D_TYPE
 		  d_type = d->d_type;
 
 		  if (d_type != DT_REG)
-#endif
 		    {
 		      char fullname[fnamelen + 2 * strlen (d->d_name) + 7];
 
-#ifdef _DIRENT_HAVE_D_TYPE
 		      if (d_type == DT_UNKNOWN)
-#endif
 			{
 			  strcpy (stpcpy (stpcpy (fullname, fname), "/"),
 				  d->d_name);
diff --git a/posix/bug-glob2.c b/posix/bug-glob2.c
index 592d957..c9ed76e 100644
--- a/posix/bug-glob2.c
+++ b/posix/bug-glob2.c
@@ -207,21 +207,13 @@ my_readdir (void *gdir)
 
   dir->d.d_ino = 1;		/* glob should not skip this entry.  */
 
-#ifdef _DIRENT_HAVE_D_TYPE
   dir->d.d_type = filesystem[dir->idx].type;
-#endif
 
   strcpy (dir->d.d_name, filesystem[dir->idx].name);
 
-#ifdef _DIRENT_HAVE_D_TYPE
   PRINTF ("my_readdir ({ level: %d, idx: %ld }) = { d_ino: %ld, d_type: %d, d_name: \"%s\" }\n",
 	  dir->level, (long int) dir->idx, dir->d.d_ino, dir->d.d_type,
 	  dir->d.d_name);
-#else
-  PRINTF ("my_readdir ({ level: %d, idx: %ld }) = { d_ino: %ld, d_name: \"%s\" }\n",
-	  dir->level, (long int) dir->idx, dir->d.d_ino,
-	  dir->d.d_name);
-#endif
 
   ++dir->idx;
 
diff --git a/posix/tst-dir.c b/posix/tst-dir.c
index fee79b3..52ff36f 100644
--- a/posix/tst-dir.c
+++ b/posix/tst-dir.c
@@ -149,10 +149,8 @@ main (int argc, char *argv[])
 
   while ((d = readdir64 (dir1)) != NULL)
     {
-#ifdef _DIRENT_HAVE_D_TYPE
       if (d->d_type != DT_UNKNOWN && d->d_type != DT_REG)
 	continue;
-#endif
 
       if (d->d_ino == st2.st_ino)
 	{
@@ -234,10 +232,8 @@ main (int argc, char *argv[])
 
   while ((d = readdir64 (dir2)) != NULL)
     {
-#ifdef _DIRENT_HAVE_D_TYPE
       if (d->d_type != DT_UNKNOWN && d->d_type != DT_DIR)
 	continue;
-#endif
 
       if (d->d_ino == st2.st_ino)
 	{
@@ -327,10 +323,8 @@ main (int argc, char *argv[])
   rewinddir (dir1);
   while (readdir64_r (dir1, &direntbuf.d, &d) == 0 && d != NULL)
     {
-#ifdef _DIRENT_HAVE_D_TYPE
       if (d->d_type != DT_UNKNOWN && d->d_type != DT_DIR)
 	continue;
-#endif
 
       if (d->d_ino == st1.st_ino)
 	{
@@ -457,13 +451,11 @@ main (int argc, char *argv[])
 	  || strcmp (d->d_name, "..") == 0
 	  || strcmp (d->d_name, "another-dir") == 0)
 	{
-#ifdef _DIRENT_HAVE_D_TYPE
 	  if (d->d_type != DT_UNKNOWN && d->d_type != DT_DIR)
 	    {
 	      printf ("d_type for \"%s\" is wrong\n", d->d_name);
 	      result = 1;
 	    }
-#endif
 	  if (stat64 (d->d_name, &st3) < 0)
 	    {
 	      printf ("cannot stat \"%s\" is wrong\n", d->d_name);
@@ -477,13 +469,11 @@ main (int argc, char *argv[])
 	}
       else if (strcmp (d->d_name, "and-a-file") == 0)
 	{
-#ifdef _DIRENT_HAVE_D_TYPE
 	  if (d->d_type != DT_UNKNOWN && d->d_type != DT_REG)
 	    {
 	      printf ("d_type for \"%s\" is wrong\n", d->d_name);
 	      result = 1;
 	    }
-#endif
 	  if (stat64 (d->d_name, &st3) < 0)
 	    {
 	      printf ("cannot stat \"%s\" is wrong\n", d->d_name);
diff --git a/posix/tst-glob_lstat_compat.c b/posix/tst-glob_lstat_compat.c
index ccfda4b..6b77909 100644
--- a/posix/tst-glob_lstat_compat.c
+++ b/posix/tst-glob_lstat_compat.c
@@ -166,9 +166,7 @@ my_readdir (void *gdir)
 
   dir->d.d_ino = 1;		/* glob should not skip this entry.  */
 
-#ifdef _DIRENT_HAVE_D_TYPE
   dir->d.d_type = filesystem[dir->idx].type;
-#endif
 
   strcpy (dir->d.d_name, filesystem[dir->idx].name);
 
diff --git a/posix/tst-gnuglob-skeleton.c b/posix/tst-gnuglob-skeleton.c
index 9276297..ba6812b 100644
--- a/posix/tst-gnuglob-skeleton.c
+++ b/posix/tst-gnuglob-skeleton.c
@@ -221,27 +221,16 @@ my_readdir (void *gdir)
 
   dir->d.d_ino = 1;		/* glob should not skip this entry.  */
 
-#ifdef _DIRENT_HAVE_D_TYPE
   dir->d.d_type = filesystem[dir->idx].type;
-#endif
 
   strcpy (dir->d.d_name, filesystem[dir->idx].name);
 
-#ifdef _DIRENT_HAVE_D_TYPE
   if (test_verbose > 0)
     printf ("info: my_readdir ({ level: %d, idx: %ld })"
 	    " = { d_ino: %lld, d_type: %d, d_name: \"%s\" }\n",
 	    dir->level, (long int) dir->idx,
 	    (long long) dir->d.d_ino, dir->d.d_type,
 	    dir->d.d_name);
-#else
-  if (test_verbose > 0)
-    printf ("info: my_readdir ({ level: %d, idx: %ld })"
-	    " = { d_ino: %lld, d_name: \"%s\" }\n",
-	    dir->level, (long int) dir->idx,
-	    (long long) dir->d.d_ino,
-	    dir->d.d_name);
-#endif
 
   ++dir->idx;
 

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog                     |   15 +++++++++++++++
 elf/ldconfig.c                |   17 ++---------------
 io/tst-mkdirat.c              |    2 --
 io/tst-mkfifoat.c             |    2 --
 io/tst-mknodat.c              |    2 --
 locale/programs/charmap-dir.c |    2 --
 locale/programs/locale.c      |    2 --
 locale/programs/locarchive.c  |    4 ----
 posix/bug-glob2.c             |    8 --------
 posix/tst-dir.c               |   10 ----------
 posix/tst-glob_lstat_compat.c |    2 --
 posix/tst-gnuglob-skeleton.c  |   11 -----------
 12 files changed, 17 insertions(+), 60 deletions(-)


hooks/post-receive
-- 
GNU C Library master sources


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]