mirror of
https://github.com/sheumann/hush.git
synced 2025-01-14 12:30:40 +00:00
ls: for some options, only last takes effect. Closes bug 2959
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
parent
1393fc1161
commit
f313746a6d
@ -984,13 +984,23 @@ int ls_main(int argc UNUSED_PARAM, char **argv)
|
|||||||
|
|
||||||
/* process options */
|
/* process options */
|
||||||
IF_FEATURE_LS_COLOR(applet_long_options = ls_longopts;)
|
IF_FEATURE_LS_COLOR(applet_long_options = ls_longopts;)
|
||||||
#if ENABLE_FEATURE_AUTOWIDTH
|
opt_complementary =
|
||||||
opt_complementary = "T+:w+"; /* -T N, -w N */
|
/* http://pubs.opengroup.org/onlinepubs/9699919799/utilities/ls.html:
|
||||||
opt = getopt32(argv, ls_options, &tabstops, &terminal_width
|
* in some pairs of opts, only last one takes effect:
|
||||||
IF_FEATURE_LS_COLOR(, &color_opt));
|
*/
|
||||||
#else
|
IF_FEATURE_LS_TIMESTAMPS(IF_FEATURE_LS_SORTFILES("t-S:S-t")) /* time/size */
|
||||||
opt = getopt32(argv, ls_options IF_FEATURE_LS_COLOR(, &color_opt));
|
// ":H-L:L-H:" - we don't have -H
|
||||||
#endif
|
// ":m-l:l-m:" - we don't have -m
|
||||||
|
":C-xl:x-Cl:l-xC" /* bycols/bylines/long */
|
||||||
|
":C-1:1-C" /* bycols/oneline */
|
||||||
|
":x-1:1-x" /* bylines/oneline (not in SuS, but in GNU coreutils 8.4) */
|
||||||
|
":c-u:u-c" /* mtime/atime */
|
||||||
|
/* -T NUM, -w NUM: */
|
||||||
|
IF_FEATURE_AUTOWIDTH(":T+:w+");
|
||||||
|
opt = getopt32(argv, ls_options
|
||||||
|
IF_FEATURE_AUTOWIDTH(, &tabstops, &terminal_width)
|
||||||
|
IF_FEATURE_LS_COLOR(, &color_opt)
|
||||||
|
);
|
||||||
for (i = 0; opt_flags[i] != (1U<<31); i++) {
|
for (i = 0; opt_flags[i] != (1U<<31); i++) {
|
||||||
if (opt & (1 << i)) {
|
if (opt & (1 << i)) {
|
||||||
unsigned flags = opt_flags[i];
|
unsigned flags = opt_flags[i];
|
||||||
@ -1054,7 +1064,7 @@ int ls_main(int argc UNUSED_PARAM, char **argv)
|
|||||||
if ((all_fmt & STYLE_MASK) == STYLE_LONG && (all_fmt & LIST_ID_NUMERIC))
|
if ((all_fmt & STYLE_MASK) == STYLE_LONG && (all_fmt & LIST_ID_NUMERIC))
|
||||||
all_fmt &= ~LIST_ID_NAME; /* don't list names if numeric uid */
|
all_fmt &= ~LIST_ID_NAME; /* don't list names if numeric uid */
|
||||||
|
|
||||||
/* choose a display format */
|
/* choose a display format if one was not already specified by an option */
|
||||||
if (!(all_fmt & STYLE_MASK))
|
if (!(all_fmt & STYLE_MASK))
|
||||||
all_fmt |= (isatty(STDOUT_FILENO) ? STYLE_COLUMNS : STYLE_SINGLE);
|
all_fmt |= (isatty(STDOUT_FILENO) ? STYLE_COLUMNS : STYLE_SINGLE);
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user