diff options
author | Pedro Alves <pedro@codesourcery.com> | 2009-05-19 02:46:45 +0000 |
---|---|---|
committer | Pedro Alves <pedro@codesourcery.com> | 2009-05-19 02:46:45 +0000 |
commit | fbde8f3b4092cbb5b2b0949f38964f1a78e57e03 (patch) | |
tree | e3c1ab5c20ded8f6b3b25adb4582bdca72c81978 /gdb/linux-nat.c | |
parent | 6a45bb1966ada854fbc2f42001f308ace42e165c (diff) | |
download | gdb-fbde8f3b4092cbb5b2b0949f38964f1a78e57e03.tar.gz |
* fork-child.c: Don't include frame.h. Include terminal.h.
(fork_inferior): Call new_tty_postfork after forking adn adding
the child to the inferior list.
* inferior.h (new_tty_prefork, gdb_has_a_terminal): Don't declare
here.
* inflow.c (struct terminal_info): Remove const qualifier from
`run_terminal' field.
(inferior_thisrun_terminal): Tweak comment.
(inflow_inferior_exit): Release the `run_terminal' field.
(copy_terminal_info): New function.
(new_tty_postfork): New function.
* terminal.h (new_tty_prefork, new_tty, new_tty_postfork,
(copy_terminal_info, gdb_has_a_terminal, gdb_setpgid): Declare.
* inf-ptrace.c: Include terminal.h.
(inf_ptrace_follow_fork): Copy the parent's terminal info to the
child.
* linux-nat.c: Include terminal.h.
(linux_child_follow_fork): Copy the parent's terminal info to the
child.
* inf-ttrace.c: Include terminal.h.
(inf_ttrace_follow_fork): Copy the parent's terminal info to the
child.
Diffstat (limited to 'gdb/linux-nat.c')
-rw-r--r-- | gdb/linux-nat.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/gdb/linux-nat.c b/gdb/linux-nat.c index c3aa94fe3ad..d5799200002 100644 --- a/gdb/linux-nat.c +++ b/gdb/linux-nat.c @@ -53,6 +53,7 @@ #include <sys/types.h> #include "gdb_dirent.h" #include "xml-support.h" +#include "terminal.h" #ifdef HAVE_PERSONALITY # include <sys/personality.h> @@ -626,6 +627,7 @@ linux_child_follow_fork (struct target_ops *ops, int follow_child) parent_inf = find_inferior_pid (GET_PID (last_ptid)); child_inf->attach_flag = parent_inf->attach_flag; + copy_terminal_info (child_inf, parent_inf); /* Retain child fork in ptrace (stopped) state. */ fp = find_fork_pid (child_pid); @@ -723,6 +725,7 @@ linux_child_follow_fork (struct target_ops *ops, int follow_child) parent_inf = find_inferior_pid (GET_PID (last_ptid)); child_inf->attach_flag = parent_inf->attach_flag; + copy_terminal_info (child_inf, parent_inf); /* If we're vforking, we may want to hold on to the parent until the child exits or execs. At exec time we can remove the old |