forked from Imagelibrary/binutils-gdb
gdb: make inferior::terminal a unique ptr
This changes the inferior::terminal field to be a unique pointer, so its deallocation is automatically managed. gdb/ChangeLog: * inferior.h (struct inferior) <terminal>: Change type to gdb::unique_xmalloc_ptr<char>. * inferior.c (inferior::~inferior): Don't free inf->terminal. * infcmd.c (set_inferior_io_terminal): Don't free terminal field, adjust to unique pointer. (get_inferior_io_terminal): Adjust to unique pointer. Change-Id: Iedb6459b4f9eeae812b0cb9d514b5707d5107cdb
This commit is contained in:
@@ -108,10 +108,8 @@ int stopped_by_random_signal;
|
||||
void
|
||||
set_inferior_io_terminal (const char *terminal_name)
|
||||
{
|
||||
xfree (current_inferior ()->terminal);
|
||||
|
||||
if (terminal_name != NULL && *terminal_name != '\0')
|
||||
current_inferior ()->terminal = xstrdup (terminal_name);
|
||||
current_inferior ()->terminal.reset (xstrdup (terminal_name));
|
||||
else
|
||||
current_inferior ()->terminal = NULL;
|
||||
}
|
||||
@@ -119,7 +117,7 @@ set_inferior_io_terminal (const char *terminal_name)
|
||||
const char *
|
||||
get_inferior_io_terminal (void)
|
||||
{
|
||||
return current_inferior ()->terminal;
|
||||
return current_inferior ()->terminal.get ();
|
||||
}
|
||||
|
||||
static void
|
||||
|
||||
Reference in New Issue
Block a user