From b4b4ac0b71ae756aa805f15a6f9b0c5b79d8f398 Mon Sep 17 00:00:00 2001 From: Andrew Cagney Date: Mon, 21 Feb 2005 03:25:56 +0000 Subject: 2005-02-20 Andrew Cagney * cli/cli-decode.c (add_setshow_optional_filename_cmd): New function. * cli/cli-setshow.c (deprecated_show_value_hack) (do_setshow_command): Handle var_optional_filename. * command.h (enum var_types): Add var_optional_filename. (add_setshow_optional_filename_cmd): Declare. * infcmd.c (notice_args_read): Use. --- gdb/cli/cli-setshow.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'gdb/cli/cli-setshow.c') diff --git a/gdb/cli/cli-setshow.c b/gdb/cli/cli-setshow.c index 993ca5c..15c664d 100644 --- a/gdb/cli/cli-setshow.c +++ b/gdb/cli/cli-setshow.c @@ -102,6 +102,7 @@ deprecated_show_value_hack (struct ui_file *ignore_file, { case var_string: case var_string_noescape: + case var_optional_filename: case var_filename: case var_enum: printf_filtered ((" is \"%s\".\n"), value); @@ -177,8 +178,14 @@ do_setshow_command (char *arg, int from_tty, struct cmd_list_element *c) *(char **) c->var = savestring (arg, strlen (arg)); break; case var_filename: + case var_optional_filename: if (arg == NULL) - error_no_arg (_("filename to set it to.")); + { + if (c->var_type == var_optional_filename) + arg = ""; + else + error_no_arg (_("filename to set it to.")); + } if (*(char **) c->var != NULL) xfree (*(char **) c->var); *(char **) c->var = tilde_expand (arg); @@ -298,6 +305,7 @@ do_setshow_command (char *arg, int from_tty, struct cmd_list_element *c) } break; case var_string_noescape: + case var_optional_filename: case var_filename: case var_enum: if (*(char **) c->var) -- cgit v1.1