svn commit: r202572 - head/lib/libc/gen

Andrey A. Chernov ache at FreeBSD.org
Mon Jan 18 13:44:44 UTC 2010


Author: ache
Date: Mon Jan 18 13:44:44 2010
New Revision: 202572
URL: http://svn.freebsd.org/changeset/base/202572

Log:
  Double checking my commit I found that comment saying that
  POSIX 2008 and XSI 7require strcoll() for opendir() is not true.
  I can't find such requirement in POSIX 2008 and XSI 7.
  
  So, back out that part of my commit, returning old strcmp(), and remove
  this misleading comment.

Modified:
  head/lib/libc/gen/opendir.c

Modified: head/lib/libc/gen/opendir.c
==============================================================================
--- head/lib/libc/gen/opendir.c	Mon Jan 18 13:38:45 2010	(r202571)
+++ head/lib/libc/gen/opendir.c	Mon Jan 18 13:44:44 2010	(r202572)
@@ -92,15 +92,11 @@ __opendir2(const char *name, int flags)
 	return __opendir_common(fd, name, flags);
 }
 
-/*
- * POSIX 2008 and XSI 7 require alphasort() to call strcoll() for
- * directory entries ordering.
- */
 static int
-opendir_alphasort(const void *p1, const void *p2)
+opendir_sort(const void *p1, const void *p2)
 {
 
-	return (strcoll((*(const struct dirent **)p1)->d_name,
+	return (strcmp((*(const struct dirent **)p1)->d_name,
 	    (*(const struct dirent **)p2)->d_name));
 }
 
@@ -253,7 +249,7 @@ __opendir_common(int fd, const char *nam
 				 * This sort must be stable.
 				 */
 				mergesort(dpv, n, sizeof(*dpv),
-				    opendir_alphasort);
+				    opendir_sort);
 
 				dpv[n] = NULL;
 				xp = NULL;


More information about the svn-src-all mailing list