aboutsummaryrefslogtreecommitdiffstats
path: root/README.multi-tty
diff options
context:
space:
mode:
authorKaroly Lorentey2006-01-11 14:51:51 +0000
committerKaroly Lorentey2006-01-11 14:51:51 +0000
commit6bbba5a627cf59d22d9b21f8f7405e43af2e94cf (patch)
treef7fa2589b087667c561e7e8d9d5e3de5a8d702fb /README.multi-tty
parenta8bf7299ee74781dd485c33c5eac20aee0f0ebef (diff)
downloademacs-6bbba5a627cf59d22d9b21f8f7405e43af2e94cf.tar.gz
emacs-6bbba5a627cf59d22d9b21f8f7405e43af2e94cf.zip
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
Diffstat (limited to 'README.multi-tty')
-rw-r--r--README.multi-tty35
1 files changed, 26 insertions, 9 deletions
diff --git a/README.multi-tty b/README.multi-tty
index 7ad6bf5b31f..261aa84ae78 100644
--- a/README.multi-tty
+++ b/README.multi-tty
@@ -401,6 +401,16 @@ is probably not very interesting for anyone else.)
401THINGS TO DO 401THINGS TO DO
402------------ 402------------
403 403
404** Understand how `quit_throw_to_read_char' works, and fix any bugs
405 that come to light.
406
407** Replace wrong_kboard_jmpbuf with a special return value of
408 read_char. It is absurd that we use setjmp/longjmp just to return
409 to the immediate caller.
410
411** See if getcjmp can be eliminated somehow. Why does Emacs allow
412 asynchronous input processing while it's reading input anyway?
413
404** `delete-frame' events are handled by `special-event-map' 414** `delete-frame' events are handled by `special-event-map'
405 immediately when read by `read_char'. This is fine but it prevents 415 immediately when read by `read_char'. This is fine but it prevents
406 higher-level keymaps from binding that event to get notified of the 416 higher-level keymaps from binding that event to get notified of the
@@ -688,15 +698,6 @@ THINGS TO DO
688 698
689** Do a grep on XXX and ?? for more issues. 699** Do a grep on XXX and ?? for more issues.
690 700
691** Understand Emacs's low-level input system (it's black magic) :-)
692 What exactly does interrupt_input do? I tried to disable it for
693 raw secondary tty support, but it does not seem to do anything
694 useful. (Update: Look again. X unconditionally enables this, maybe
695 that's why raw terminal support is broken again. I really do need
696 to understand input.)
697 (Update: I am starting to understand the read_key_sequence->read-char
698 ->kbd_buffer_get_event->read_avail_input->read_socket_hook path. Yay!)
699
700** flow-ctrl.el must be updated. 701** flow-ctrl.el must be updated.
701 702
702** Fix stuff_char for multi-tty. Doesn't seem to be of high priority. 703** Fix stuff_char for multi-tty. Doesn't seem to be of high priority.
@@ -1435,6 +1436,22 @@ DIARY OF CHANGES
1435 kills the terminal. There was no bug here, but I rewrote the whole 1436 kills the terminal. There was no bug here, but I rewrote the whole
1436 single_kboard mess anyway.) (patch-489) 1437 single_kboard mess anyway.) (patch-489)
1437 1438
1439-- Understand Emacs's low-level input system (it's black magic) :-)
1440 What exactly does interrupt_input do? I tried to disable it for
1441 raw secondary tty support, but it does not seem to do anything
1442 useful. (Update: Look again. X unconditionally enables this, maybe
1443 that's why raw terminal support is broken again. I really do need
1444 to understand input.)
1445 (Update: I am starting to understand the read_key_sequence->read-char
1446 ->kbd_buffer_get_event->read_avail_input->read_socket_hook path. Yay!)
1447
1448 (Update: OK, it all seems so easy now (NOT). Input could be done
1449 synchronously (with wait_reading_process_input), or asynchronously
1450 by SIGIO or polling (SIGALRM). C-g either sets the Vquit_flag,
1451 signals a 'quit condition (when immediate_quit), or throws to
1452 `getcjmp' when Emacs was waiting for input when the C-g event
1453 arrived.)
1454
1438 1455
1439;;; arch-tag: 8da1619e-2e79-41a8-9ac9-a0485daad17d 1456;;; arch-tag: 8da1619e-2e79-41a8-9ac9-a0485daad17d
1440 1457