GNU bug report logs -
#70519
30.0.50; Device for Emacs terminal I/O
Previous Next
Full log
View this message in rfc822 format
On 2024-05-04 09:19, Eli Zaretskii wrote:
> AFAIU, the --terminal option causes
> Emacs to close its original stdin, so Ctrl-C does not send SIGINT to
> Emacs. But I'm nowhere near being an expert on that. Paul, can you
> please comment on that?
Closing stdin doesn't change a process's controlling terminal. On
GNU/Linux you need to use ioctl with TIOCSCTTY and there are a bunch of
other preconditions. See how emacs_spawn uses TIOCSCTTY:
/* We ignore the return value
because faith <at> cs.unc.edu says that is necessary on Linux. */
ioctl (std_in, TIOCSCTTY, 0);
This comment (and ignoring ioctl's return value) was added by rms in
commit 084fd64ac9daee2a89d393f07ce87ec8df543330 dated 1993. I'm
skeptical that the comment is true now. You might try adding code to
check the return value and report any errors, though Emacs shouldn't
abort (as it did before that 1993 change) if the ioctl fails.
This bug report was last modified 1 year and 43 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.