mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-10-18 13:23:10 +08:00
Revert "Delete program spaces directly when removing inferiors"
Reverted, since it causes a build failure. It turns out that delete_inferior_silent wasn't actually unused. This reverts commit 0560c645c02eba2828a053039dcfdf676cdd1d00.
This commit is contained in:
@ -235,8 +235,8 @@ save_current_program_space (void)
|
||||
|
||||
/* Returns true iff there's no inferior bound to PSPACE. */
|
||||
|
||||
int
|
||||
program_space_empty_p (struct program_space *pspace)
|
||||
static int
|
||||
pspace_empty_p (struct program_space *pspace)
|
||||
{
|
||||
if (find_inferior_for_program_space (pspace) != NULL)
|
||||
return 0;
|
||||
@ -244,31 +244,30 @@ program_space_empty_p (struct program_space *pspace)
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* Remove a program space from the program spaces list and release it. It is
|
||||
an error to call this function while PSPACE is the current program space. */
|
||||
/* Prune away automatically added program spaces that aren't required
|
||||
anymore. */
|
||||
|
||||
void
|
||||
delete_program_space (struct program_space *pspace)
|
||||
prune_program_spaces (void)
|
||||
{
|
||||
struct program_space *ss, **ss_link;
|
||||
gdb_assert(pspace != NULL);
|
||||
gdb_assert(pspace != current_program_space);
|
||||
struct program_space *current = current_program_space;
|
||||
|
||||
ss = program_spaces;
|
||||
ss_link = &program_spaces;
|
||||
while (ss != NULL)
|
||||
while (ss)
|
||||
{
|
||||
if (ss == pspace)
|
||||
if (ss == current || !pspace_empty_p (ss))
|
||||
{
|
||||
*ss_link = ss->next;
|
||||
break;
|
||||
ss_link = &ss->next;
|
||||
ss = *ss_link;
|
||||
continue;
|
||||
}
|
||||
|
||||
ss_link = &ss->next;
|
||||
*ss_link = ss->next;
|
||||
release_program_space (ss);
|
||||
ss = *ss_link;
|
||||
}
|
||||
|
||||
release_program_space (pspace);
|
||||
}
|
||||
|
||||
/* Prints the list of program spaces and their details on UIOUT. If
|
||||
|
Reference in New Issue
Block a user