-C and -c allow at most one input file. Ensure this is the case when the
authortim <tim@openbsd.org>
Tue, 13 Oct 2015 16:21:42 +0000 (16:21 +0000)
committertim <tim@openbsd.org>
Tue, 13 Oct 2015 16:21:42 +0000 (16:21 +0000)
input files are specified through --files0-from.

OK millert@

usr.bin/sort/sort.c

index 6594ab6..bb0178c 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: sort.c,v 1.79 2015/04/05 13:56:04 millert Exp $       */
+/*     $OpenBSD: sort.c,v 1.80 2015/10/13 16:21:42 tim Exp $   */
 
 /*-
  * Copyright (C) 2009 Gabor Kovesdan <gabor@FreeBSD.org>
@@ -1055,6 +1055,11 @@ main(int argc, char *argv[])
        }
 #endif
 
+       if (argv_from_file0) {
+               argc = argc_from_file0;
+               argv = argv_from_file0;
+       }
+
        if (sort_opts_vals.cflag && argc > 1)
                errx(2, "only one input file is allowed with the -%c flag",
                    sort_opts_vals.csilentflag ? 'C' : 'c');
@@ -1091,11 +1096,6 @@ main(int argc, char *argv[])
                ks->sm.func = get_sort_func(&(ks->sm));
        }
 
-       if (argv_from_file0) {
-               argc = argc_from_file0;
-               argv = argv_from_file0;
-       }
-
        if (debug_sort) {
                printf("Memory to be used for sorting: %llu\n",
                    available_free_memory);