From 2f1c7c3fd0024f4c396626602ea6da10d57ae9e2 Mon Sep 17 00:00:00 2001 From: Jim Kingdon Date: Thu, 7 Oct 1993 18:40:39 +0000 Subject: [PATCH] * 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. --- gdb/ChangeLog | 8 ++++++++ gdb/blockframe.c | 7 ++++++- gdb/infrun.c | 6 +++--- 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, -- 2.7.4