aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog8
-rw-r--r--gdb/blockframe.c7
-rw-r--r--gdb/infrun.c6
3 files changed, 17 insertions, 4 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index b141b95..126f738 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,11 @@
+Thu Oct 7 12:56:57 1993 Jim Kingdon (kingdon@lioth.cygnus.com)
+
+ * blockframe.c (find_pc_partial_function): If we call
+ PSYMTAB_TO_SYMTAB, call target_terminal_ours_for_output first.
+ This is needed now that wait_for_inferior passes in endaddr.
+ * infrun.c: Move call to target_terminal_inferior from proceed
+ to resume.
+
Thu Oct 7 09:22:04 1993 Stu Grossman (grossman at cygnus.com)
* blockframe.c (find_pc_partial_function): Fix handling for PCs
diff --git a/gdb/blockframe.c b/gdb/blockframe.c
index 0d0e89a..71c9057 100644
--- a/gdb/blockframe.c
+++ b/gdb/blockframe.c
@@ -648,7 +648,12 @@ find_pc_partial_function (pc, name, address, endaddr)
{
/* Need to read the symbols to get a good value for the end address. */
if (endaddr != NULL && !pst->readin)
- PSYMTAB_TO_SYMTAB (pst);
+ {
+ /* Need to get the terminal in case symbol-reading produces
+ output. */
+ target_terminal_ours_for_output ();
+ PSYMTAB_TO_SYMTAB (pst);
+ }
if (pst->readin)
{
diff --git a/gdb/infrun.c b/gdb/infrun.c
index d539ddd..84ccf93 100644
--- a/gdb/infrun.c
+++ b/gdb/infrun.c
@@ -303,6 +303,9 @@ resume (step, sig)
DO_DEFERRED_STORES;
#endif
+ /* Install inferior's terminal modes. */
+ target_terminal_inferior ();
+
target_resume (inferior_pid, step, sig);
discard_cleanups (old_cleanups);
}
@@ -391,9 +394,6 @@ The same program may be running in another process.");
breakpoints_inserted = 1;
}
- /* Install inferior's terminal modes. */
- target_terminal_inferior ();
-
if (siggnal >= 0)
stop_signal = siggnal;
/* If this signal should not be seen by program,