bug-coreutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

improved emulation for "sort -y" on Solaris 8 and later


From: Paul Eggert
Subject: improved emulation for "sort -y" on Solaris 8 and later
Date: Mon, 06 Sep 2004 22:14:13 -0700

I installed this minor emulation improvement:

2004-09-06  Paul Eggert  <address@hidden>

        * src/sort.c (main): Emulate Solaris 8 and 9 "sort -y", so that
        "sort -y abc" is like "sort abc" whereas "sort -y 100" is like
        plain "sort".

Index: sort.c
===================================================================
RCS file: /home/eggert/coreutils/cu/src/sort.c,v
retrieving revision 1.291
retrieving revision 1.292
diff -p -u -r1.291 -r1.292
--- sort.c      10 Aug 2004 22:08:09 -0000      1.291
+++ sort.c      7 Sep 2004 05:09:24 -0000       1.292
@@ -2472,9 +2472,23 @@ main (int argc, char **argv)
          break;
 
        case 'y':
-         /* Accept and ignore e.g. -y0 for compatibility with Solaris
-            2.x through Solaris 7.  -y is marked as obsolete starting
-            with Solaris 8.  */
+         /* Accept and ignore e.g. -y0 for compatibility with Solaris 2.x
+            through Solaris 7.  It is also accepted by many non-Solaris
+            "sort" implementations, e.g., AIX 5.2, HP-UX 11i v2, IRIX 6.5.
+            -y is marked as obsolete starting with Solaris 8 (1999), but is
+            still accepted as of Solaris 10 prerelease (2004).
+
+            Solaris 2.5.1 "sort -y 100" reads the input file "100", but
+            emulate Solaris 8 and 9 "sort -y 100" which ignores the "100",
+            and which in general ignores the argument after "-y" if it
+            consists entirely of digits (it can even be empty).  */
+         if (!optarg && optind != argc)
+           {
+             char const *p;
+             for (p = argv[optind]; ISDIGIT (*p); p++)
+               continue;
+             optind += !*p;
+           }
          break;
 
        case 'z':




reply via email to

[Prev in Thread] Current Thread [Next in Thread]