mirror of
https://github.com/ibm-s390-linux/s390-tools.git
synced 2026-08-05 02:14:52 +00:00
hyptop/opts: Replace sort_field option with sort
Hyptop's "--sort_field" command line option has always been documented as "--sort", while the code _only_ explicitly has "--sort_field". Specifying the shorter "--sort" happened to work due to an unnoticed getopt() behavior. From getopt(3) man page: """ Long option names may be abbreviated if the abbreviation is unique or is an exact match for some defined option. """ With the addition of "--sort-field" as another unique identifier via commitc5695e43c4("hyptop/opts: Replace long option formats for consistency") "--sort" is no longer unique. getopt() won't be able to use that as an abbreviation, since there is ambiguity between "--sort_field" and new "--sort-field" as they are defined as separate options. Replace "--sort-field" and "--sort_field" with plain "--sort" to adhere to the documented hyptop command line argument specification and resolve the broken behavior. Fixes:c5695e43c4("hyptop/opts: Replace long option formats for consistency") Reported-by: Gorkem Kilinc <kilinc@linux.ibm.com> Reviewed-by: Jan Höppner <hoeppner@linux.ibm.com> Signed-off-by: Mete Durlu <meted@linux.ibm.com> Signed-off-by: Jan Höppner <hoeppner@linux.ibm.com>
This commit is contained in:
@@ -58,9 +58,8 @@ static char HELP_TEXT[] =
|
||||
* Options with underscore to keep compatibility
|
||||
*/
|
||||
#define OPT_BATCH_MODE 257 /* --batch_mode */
|
||||
#define OPT_SORT_FIELD 258 /* --sort | --sort_field */
|
||||
#define OPT_CPU_TYPES 259 /* --cpu_types */
|
||||
#define OPT_SMT_FACTOR 260 /* --smt_factor */
|
||||
#define OPT_CPU_TYPES 258 /* --cpu_types */
|
||||
#define OPT_SMT_FACTOR 259 /* --smt_factor */
|
||||
|
||||
/*
|
||||
* Initialize default settings
|
||||
@@ -224,7 +223,7 @@ static void l_fields_set(char *str)
|
||||
}
|
||||
|
||||
/*
|
||||
* Set the "--sort_field" option
|
||||
* Set the "--sort" option
|
||||
*/
|
||||
static void l_sort_field_set(char *str)
|
||||
{
|
||||
@@ -371,8 +370,7 @@ void opts_parse(int argc, char *argv[])
|
||||
{ "sys", required_argument, NULL, 's'},
|
||||
{ "iterations", required_argument, NULL, 'n'},
|
||||
{ "fields", required_argument, NULL, 'f'},
|
||||
{ "sort-field", required_argument, NULL, 'S'},
|
||||
{ "sort_field", required_argument, NULL, OPT_SORT_FIELD},
|
||||
{ "sort", required_argument, NULL, 'S'},
|
||||
{ "cpu-types", required_argument, NULL, 't'},
|
||||
{ "cpu_types", required_argument, NULL, OPT_CPU_TYPES},
|
||||
{ "format", required_argument, NULL, OPT_FORMAT },
|
||||
@@ -420,7 +418,6 @@ void opts_parse(int argc, char *argv[])
|
||||
case 'f':
|
||||
l_fields_set(optarg);
|
||||
break;
|
||||
case OPT_SORT_FIELD:
|
||||
case 'S':
|
||||
l_sort_field_set(optarg);
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user