mirror of
https://github.com/darlinghq/darling-gdb.git
synced 2024-11-24 12:39:59 +00:00
* cli/cli-decode.c (cmd_type): New function.
* command.h (cmd_type): Declare. * infrun.c (set_schedlock_func): Call function cmd_type. * kod.c (kod_set_os): Call cmd_type. * cris-tdep.c (cris_version_update): Use function cmd_type. (cris_mode_update, cris_abi_update): Ditto.
This commit is contained in:
parent
4dae1ae748
commit
1868c04eba
@ -1,5 +1,12 @@
|
||||
2002-03-17 Andrew Cagney <ac131313@redhat.com>
|
||||
|
||||
* cli/cli-decode.c (cmd_type): New function.
|
||||
* command.h (cmd_type): Declare.
|
||||
* infrun.c (set_schedlock_func): Call function cmd_type.
|
||||
* kod.c (kod_set_os): Call cmd_type.
|
||||
* cris-tdep.c (cris_version_update): Use function cmd_type.
|
||||
(cris_mode_update, cris_abi_update): Ditto.
|
||||
|
||||
* command.h: (execute_cmd_post_hook): Declare.
|
||||
(execute_cmd_pre_hook): Declare.
|
||||
* cli/cli-script.c (clear_hook_in_cleanup): New function.
|
||||
|
@ -86,6 +86,12 @@ cmd_cfunc_eq (struct cmd_list_element *cmd,
|
||||
return cmd->func == do_cfunc && cmd->function.cfunc == cfunc;
|
||||
}
|
||||
|
||||
enum cmd_types
|
||||
cmd_type (struct cmd_list_element *cmd)
|
||||
{
|
||||
return cmd->type;
|
||||
}
|
||||
|
||||
void
|
||||
set_cmd_completer (struct cmd_list_element *cmd,
|
||||
char **(*completer) (char *text, char *word))
|
||||
|
@ -306,6 +306,18 @@ extern int cmd_cfunc_eq (struct cmd_list_element *cmd,
|
||||
extern void execute_cmd_pre_hook (struct cmd_list_element *cmd);
|
||||
extern void execute_cmd_post_hook (struct cmd_list_element *cmd);
|
||||
|
||||
/* Return the type of the command. */
|
||||
/* NOTE: cagney/2002-03-17: The add_show_from_set() function clones
|
||||
the set command passed as a parameter. The clone operation will
|
||||
include (BUG?) any ``set'' command callback, if present. Commands
|
||||
like ``info set'' call all the ``show'' command callbacks.
|
||||
Unfortunatly, for ``show'' commands cloned from ``set'', this
|
||||
includes callbacks belonging to ``set'' commands. Making this
|
||||
worse, this only occures if add_show_from_set() is called after
|
||||
add_cmd_sfunc() (BUG?). */
|
||||
extern enum cmd_types cmd_type (struct cmd_list_element *cmd);
|
||||
|
||||
|
||||
extern struct cmd_list_element *lookup_cmd (char **,
|
||||
struct cmd_list_element *, char *,
|
||||
int, int);
|
||||
|
@ -3925,8 +3925,17 @@ cris_version_update (char *ignore_args, int from_tty,
|
||||
{
|
||||
struct gdbarch_info info;
|
||||
|
||||
/* NOTE: cagney/2002-03-17: The add_show_from_set() function clones
|
||||
the set command passed as a parameter. The clone operation will
|
||||
include (BUG?) any ``set'' command callback, if present.
|
||||
Commands like ``info set'' call all the ``show'' command
|
||||
callbacks. Unfortunatly, for ``show'' commands cloned from
|
||||
``set'', this includes callbacks belonging to ``set'' commands.
|
||||
Making this worse, this only occures if add_show_from_set() is
|
||||
called after add_cmd_sfunc() (BUG?). */
|
||||
|
||||
/* From here on, trust the user's CRIS version setting. */
|
||||
if (c->type == set_cmd)
|
||||
if (cmd_type (c) == set_cmd)
|
||||
{
|
||||
usr_cmd_cris_version_valid = 1;
|
||||
|
||||
@ -3943,8 +3952,17 @@ cris_mode_update (char *ignore_args, int from_tty,
|
||||
{
|
||||
struct gdbarch_info info;
|
||||
|
||||
/* NOTE: cagney/2002-03-17: The add_show_from_set() function clones
|
||||
the set command passed as a parameter. The clone operation will
|
||||
include (BUG?) any ``set'' command callback, if present.
|
||||
Commands like ``info set'' call all the ``show'' command
|
||||
callbacks. Unfortunatly, for ``show'' commands cloned from
|
||||
``set'', this includes callbacks belonging to ``set'' commands.
|
||||
Making this worse, this only occures if add_show_from_set() is
|
||||
called after add_cmd_sfunc() (BUG?). */
|
||||
|
||||
/* From here on, trust the user's CRIS mode setting. */
|
||||
if (c->type == set_cmd)
|
||||
if (cmd_type (c) == set_cmd)
|
||||
{
|
||||
usr_cmd_cris_mode_valid = 1;
|
||||
|
||||
@ -3961,8 +3979,17 @@ cris_abi_update (char *ignore_args, int from_tty,
|
||||
{
|
||||
struct gdbarch_info info;
|
||||
|
||||
/* NOTE: cagney/2002-03-17: The add_show_from_set() function clones
|
||||
the set command passed as a parameter. The clone operation will
|
||||
include (BUG?) any ``set'' command callback, if present.
|
||||
Commands like ``info set'' call all the ``show'' command
|
||||
callbacks. Unfortunatly, for ``show'' commands cloned from
|
||||
``set'', this includes callbacks belonging to ``set'' commands.
|
||||
Making this worse, this only occures if add_show_from_set() is
|
||||
called after add_cmd_sfunc() (BUG?). */
|
||||
|
||||
/* From here on, trust the user's CRIS ABI setting. */
|
||||
if (c->type == set_cmd)
|
||||
if (cmd_type (c) == set_cmd)
|
||||
{
|
||||
usr_cmd_cris_abi_valid = 1;
|
||||
|
||||
|
10
gdb/infrun.c
10
gdb/infrun.c
@ -749,7 +749,15 @@ static const char *scheduler_enums[] =
|
||||
static void
|
||||
set_schedlock_func (char *args, int from_tty, struct cmd_list_element *c)
|
||||
{
|
||||
if (c->type == set_cmd)
|
||||
/* NOTE: cagney/2002-03-17: The add_show_from_set() function clones
|
||||
the set command passed as a parameter. The clone operation will
|
||||
include (BUG?) any ``set'' command callback, if present.
|
||||
Commands like ``info set'' call all the ``show'' command
|
||||
callbacks. Unfortunatly, for ``show'' commands cloned from
|
||||
``set'', this includes callbacks belonging to ``set'' commands.
|
||||
Making this worse, this only occures if add_show_from_set() is
|
||||
called after add_cmd_sfunc() (BUG?). */
|
||||
if (cmd_type (c) == set_cmd)
|
||||
if (!target_can_lock_scheduler)
|
||||
{
|
||||
scheduler_mode = schedlock_off;
|
||||
|
17
gdb/kod.c
17
gdb/kod.c
@ -132,13 +132,16 @@ kod_set_os (char *arg, int from_tty, struct cmd_list_element *command)
|
||||
{
|
||||
char *p;
|
||||
|
||||
/* NOTE: cagney/2002-03-17: This function gets called by the command
|
||||
``info set'' with COMMAND pointing to a show_cmd rather than a
|
||||
set command. This the test below is removed, a core dump results
|
||||
(think about what happens when OPERATING_SYSTEM is NULL). The
|
||||
wiered thing is that all other ``set'' handlers don't need this
|
||||
test. */
|
||||
if (command->type != set_cmd)
|
||||
/* NOTE: cagney/2002-03-17: The add_show_from_set() function clones
|
||||
the set command passed as a parameter. The clone operation will
|
||||
include (BUG?) any ``set'' command callback, if present.
|
||||
Commands like ``info set'' call all the ``show'' command
|
||||
callbacks. Unfortunatly, for ``show'' commands cloned from
|
||||
``set'', this includes callbacks belonging to ``set'' commands.
|
||||
Making this worse, this only occures if add_show_from_set() is
|
||||
called after add_cmd_sfunc() (BUG?). */
|
||||
|
||||
if (cmd_type (command) != set_cmd)
|
||||
return;
|
||||
|
||||
/* If we had already had an open OS, close it. */
|
||||
|
Loading…
Reference in New Issue
Block a user