diff options
Diffstat (limited to 'gdb/infcmd.c')
-rw-r--r-- | gdb/infcmd.c | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/gdb/infcmd.c b/gdb/infcmd.c index 8978c8a..bf68a95 100644 --- a/gdb/infcmd.c +++ b/gdb/infcmd.c @@ -25,6 +25,7 @@ #include "inferior.h" #include "infrun.h" #include "gdbsupport/environ.h" +#include "gdbsupport/common-inferior.h" #include "value.h" #include "cli/cli-cmds.h" #include "cli/cli-style.h" @@ -39,7 +40,6 @@ #include "reggroups.h" #include "block.h" #include "solib.h" -#include <ctype.h> #include "observable.h" #include "target-descriptions.h" #include "user-regs.h" @@ -209,7 +209,7 @@ strip_bg_char (const char *args, int *bg_char_p) if (p[-1] == '&') { p--; - while (p > args && isspace (p[-1])) + while (p > args && c_isspace (p[-1])) p--; *bg_char_p = 1; @@ -260,7 +260,8 @@ post_create_inferior (int from_tty, bool set_pspace_solib_ops) if (set_pspace_solib_ops) current_program_space->set_solib_ops - (gdbarch_make_solib_ops (current_inferior ()->arch ())); + (gdbarch_make_solib_ops (current_inferior ()->arch (), + current_program_space)); if (current_program_space->exec_bfd ()) { @@ -494,6 +495,11 @@ run_command_1 (const char *args, int from_tty, enum run_how run_how) thr->set_pending_waitstatus (ws); } + /* Still call clear_proceed_status; in schedule multiple mode the proceed + can resume threads from other inferiors, which might need clearing + prior to a proceed call. */ + clear_proceed_status (0); + /* Start the target running. Do not use -1 continuation as it would skip breakpoint right at the entry point. */ proceed (regcache_read_pc (get_thread_regcache (inferior_thread ())), @@ -989,7 +995,7 @@ prepare_one_step (thread_info *tp, struct step_command_fsm *sm) if (inline_skipped_frames (tp) > 0) { const symbol *sym = inline_skipped_symbol (tp); - if (sym->aclass () == LOC_BLOCK) + if (sym->loc_class () == LOC_BLOCK) { const block *block = sym->value_block (); if (block->end () < tp->control.step_range_end) @@ -2307,12 +2313,12 @@ registers_info (const char *addr_exp, int fpregs) resembling a register following it. */ if (addr_exp[0] == '$') addr_exp++; - if (isspace ((*addr_exp)) || (*addr_exp) == '\0') + if (c_isspace ((*addr_exp)) || (*addr_exp) == '\0') error (_("Missing register name")); /* Find the start/end of this register name/num/group. */ start = addr_exp; - while ((*addr_exp) != '\0' && !isspace ((*addr_exp))) + while ((*addr_exp) != '\0' && !c_isspace ((*addr_exp))) addr_exp++; end = addr_exp; |