diff README.multi-tty @ 83454:845a93c68e9a

Fix C-g during `make-network-process'. (Reported by Mark Plaksin.) * src/process.c (Fmake_network_process): Don't unrequest_sigio on modern systems. * src/keyboard.c (Fset_input_interrupt_mode): Cosmetic change. * src/sysdep.c (request_sigio): Make it a no-op if noninteractive. (unrequest_sigio): Make it a no-op if noninteractive. git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-494
author Karoly Lorentey <lorentey@elte.hu>
date Wed, 11 Jan 2006 14:51:51 +0000
parents ff74a86c2b16
children dbd791ef90a1
line wrap: on
line diff
--- a/README.multi-tty	Fri Jan 06 16:13:05 2006 +0000
+++ b/README.multi-tty	Wed Jan 11 14:51:51 2006 +0000
@@ -401,6 +401,16 @@
 THINGS TO DO
 ------------
 
+** Understand how `quit_throw_to_read_char' works, and fix any bugs
+   that come to light.
+
+** Replace wrong_kboard_jmpbuf with a special return value of
+   read_char.  It is absurd that we use setjmp/longjmp just to return
+   to the immediate caller.
+
+** See if getcjmp can be eliminated somehow.  Why does Emacs allow
+   asynchronous input processing while it's reading input anyway?
+
 ** `delete-frame' events are handled by `special-event-map'
    immediately when read by `read_char'.  This is fine but it prevents
    higher-level keymaps from binding that event to get notified of the
@@ -688,15 +698,6 @@
 
 ** Do a grep on XXX and ?? for more issues.
 
-** Understand Emacs's low-level input system (it's black magic) :-)
-   What exactly does interrupt_input do?  I tried to disable it for
-   raw secondary tty support, but it does not seem to do anything
-   useful.  (Update: Look again. X unconditionally enables this, maybe
-   that's why raw terminal support is broken again.  I really do need
-   to understand input.)
-   (Update: I am starting to understand the read_key_sequence->read-char
-   ->kbd_buffer_get_event->read_avail_input->read_socket_hook path.  Yay!)
-
 ** flow-ctrl.el must be updated.
 
 ** Fix stuff_char for multi-tty.  Doesn't seem to be of high priority.
@@ -1435,6 +1436,22 @@
    kills the terminal.  There was no bug here, but I rewrote the whole
    single_kboard mess anyway.) (patch-489)
 
+-- Understand Emacs's low-level input system (it's black magic) :-)
+   What exactly does interrupt_input do?  I tried to disable it for
+   raw secondary tty support, but it does not seem to do anything
+   useful.  (Update: Look again. X unconditionally enables this, maybe
+   that's why raw terminal support is broken again.  I really do need
+   to understand input.)
+   (Update: I am starting to understand the read_key_sequence->read-char
+   ->kbd_buffer_get_event->read_avail_input->read_socket_hook path.  Yay!)
+
+   (Update: OK, it all seems so easy now (NOT).  Input could be done
+   synchronously (with wait_reading_process_input), or asynchronously
+   by SIGIO or polling (SIGALRM).  C-g either sets the Vquit_flag,
+   signals a 'quit condition (when immediate_quit), or throws to
+   `getcjmp' when Emacs was waiting for input when the C-g event
+   arrived.)
+
 
 ;;; arch-tag: 8da1619e-2e79-41a8-9ac9-a0485daad17d