Remove a ui-related memory leak

gdb_setup_readline makes new streams and assigns to the various stream
members of struct ui.  However, these assignments cause the previous
values to leak.  As far as I can, this code is simply unnecessary and
can be removed -- with the exception of the assignment to gdb_stdtarg,
which is not initialized anywhere else.
This commit is contained in:
Tom Tromey
2022-08-11 13:16:46 -06:00
parent 4311c583a6
commit b8043d2721
2 changed files with 1 additions and 11 deletions
-11
View File
@@ -1330,17 +1330,6 @@ gdb_setup_readline (int editing)
{
struct ui *ui = current_ui;
/* This function is a noop for the sync case. The assumption is
that the sync setup is ALL done in gdb_init, and we would only
mess it up here. The sync stuff should really go away over
time. */
if (!batch_silent)
gdb_stdout = new pager_file (new stdio_file (ui->outstream));
gdb_stderr = new stderr_file (ui->errstream);
gdb_stdlog = new timestamped_file (gdb_stderr);
gdb_stdtarg = gdb_stderr;
gdb_stdtargerr = gdb_stderr;
/* If the input stream is connected to a terminal, turn on editing.
However, that is only allowed on the main UI, as we can only have
one instance of readline. */
+1
View File
@@ -676,6 +676,7 @@ captured_main_1 (struct captured_main_args *context)
main_ui = new ui (stdin, stdout, stderr);
current_ui = main_ui;
gdb_stdtarg = gdb_stderr;
gdb_stdtargerr = gdb_stderr;
gdb_stdtargin = gdb_stdin;