* event-top.c (_initialize_event_loop): If instream is not
authorEli Zaretskii <eliz@gnu.org>
Sun, 19 Mar 2000 12:30:38 +0000 (12:30 +0000)
committerEli Zaretskii <eliz@gnu.org>
Sun, 19 Mar 2000 12:30:38 +0000 (12:30 +0000)
connected to a terminal device, turn editing off.

gdb/ChangeLog
gdb/event-top.c

index 83676d778420fbbcf26ac37e1743aaf58db12c77..727c0dbd8c3cdede19b06fcafad1fcea99b4dc0e 100644 (file)
@@ -1,3 +1,8 @@
+2000-03-19  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * event-top.c (_initialize_event_loop): If instream is not
+       connected to a terminal device, turn editing off.
+
 2000-03-19  Eli Zaretskii  <eliz@is.elta.co.il>
 
        Support for building GDB with DJGPP, and running the test suite on
index 6122cba8458e850e4739ba45bab8f3b5577cf4d3..d9a0a7c0efba786c4e309dba21490e11d36a55e9 100644 (file)
@@ -1133,9 +1133,25 @@ _initialize_event_loop (void)
 {
   if (event_loop_p)
     {
-      /* When a character is detected on instream by select or poll,
-         readline will be invoked via this callback function. */
-      call_readline = rl_callback_read_char_wrapper;
+      /* If the input stream is connected to a terminal, turn on
+         editing.  */
+      if (ISATTY (instream))
+       {
+         /* Tell gdb that we will be using the readline library. This
+            could be overwritten by a command in .gdbinit like 'set
+            editing on' or 'off'. */
+         async_command_editing_p = 1;
+         
+         /* When a character is detected on instream by select or
+            poll, readline will be invoked via this callback
+            function. */
+         call_readline = rl_callback_read_char_wrapper;
+       }
+      else
+       {
+         async_command_editing_p = 0;
+         call_readline = gdb_readline2;
+       }
 
       /* When readline has read an end-of-line character, it passes
          the complete line to gdb for processing. command_line_handler
@@ -1160,10 +1176,5 @@ _initialize_event_loop (void)
          only when it actually exists (I.e. after we say 'run' or
          after we connect to a remote target. */
       add_file_handler (input_fd, stdin_event_handler, 0);
-
-      /* Tell gdb that we will be using the readline library. This
-         could be overwritten by a command in .gdbinit like 'set
-         editing on' or 'off'. */
-      async_command_editing_p = 1;
     }
 }