CVSROOT: /cvs Module name: src Changes by: dera...@cvs.openbsd.org 2024/07/15 23:01:10
Modified files: bin/ed : ed.h io.c main.c Log message: Fix the SIGHUP signal race. ed's "event loop" operates a getchar(); check the hup flag before and after that call, when the buffer structures are stable for write_file() to work. Remove the hup handling from the SPL0() macro, because this is run in at least one place during structure instability. The SIGINT handler, which uses siglongjmp(), is also trusting the SPL1/SPL0 dance more than it should. ok millert