* blockframe.c (find_pc_partial_function): If we call
authorJim Kingdon <jkingdon@engr.sgi.com>
Thu, 7 Oct 1993 18:40:39 +0000 (18:40 +0000)
committerJim Kingdon <jkingdon@engr.sgi.com>
Thu, 7 Oct 1993 18:40:39 +0000 (18:40 +0000)
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
gdb/blockframe.c
gdb/infrun.c

index b141b9568e16435d75544dcde9883717ee5c3423..126f738249cffd2de6289e1e7e3402a3638c5845 100644 (file)
@@ -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
index 0d0e89a8d5f03f9ecb542de2e0077325fec47bdd..71c905798c67c1422a57af653768a9bf93acd8af 100644 (file)
@@ -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)
        {
index d539ddd5750b36dc758cfa49ce6273f7bcbb8b0c..84ccf931ce4b71a860d308adac8d7ad5580d5678 100644 (file)
@@ -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,