Mercurial > hg > toybox
diff toys/sort.c @ 302:87d624e86785
Only apply global flags to fallback sort.
author | Rob Landley <rob@landley.net> |
---|---|
date | Sun, 22 Jun 2008 04:15:36 -0500 |
parents | b142219d828f |
children | f90c9600a1f4 |
line wrap: on
line diff
--- a/toys/sort.c Sun Jun 22 00:57:44 2008 -0500 +++ b/toys/sort.c Sun Jun 22 04:15:36 2008 -0500 @@ -253,7 +253,7 @@ for (key=(struct sort_key *)TT.key_list; !retval && key; key = key->next_key) { - flags = (key->flags) ? key->flags : toys.optflags; + flags = key->flags ? key->flags : toys.optflags; // Chop out and modify key chunks, handling -dfib @@ -272,8 +272,10 @@ } else retval = compare_values(flags, *xx, *yy); // Perform fallback sort if necessary - - if (!retval && !(toys.optflags&FLAG_s)) retval = strcmp(*xx, *yy); + if (!retval && !(CFG_SORT_BIG && (toys.optflags&FLAG_s))) { + retval = strcmp(*xx, *yy); + flags = toys.optflags; + } return retval * ((flags&FLAG_r) ? -1 : 1); }