summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--bounce.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/bounce.c b/bounce.c
index b2764e2..381e334 100644
--- a/bounce.c
+++ b/bounce.c
@@ -68,6 +68,9 @@ static volatile sig_atomic_t signals[NSIG];
 static void signalHandler(int signal) {
 	signals[signal] = 1;
 }
+static void justExit(int signal) {
+	exit(128 + signal);
+}
 
 static struct {
 	struct pollfd *fds;
@@ -350,6 +353,12 @@ int main(int argc, char *argv[]) {
 	if (error) err(EX_OSERR, "pledge");
 #endif
 
+	// Either exit with cleanup or ignore signals until entering the main loop.
+	signal(SIGINT, justExit);
+	signal(SIGTERM, justExit);
+	signal(SIGINFO, SIG_IGN);
+	signal(SIGUSR1, SIG_IGN);
+
 	ringAlloc(ringSize);
 	if (savePath) saveLoad(savePath);
 
ght'> 2021-01-28Move gpl.c and agpl.c templates out of etcJune McEnroe 2021-01-27Set para and sect for mdocJune McEnroe Copied from the OpenBSD defaults. 2021-01-26Use First state to match keyword at beginning of lineJune McEnroe Otherwise keywords at the beginnings of lines with preceeding whitespace are not matched. 2021-01-25Install vi on Linux and nvi on macOSJune McEnroe 2021-01-25Use vi and lessJune McEnroe I haven't used neovim in a couple weeks by now, so I may as well commit this. 2021-01-20Use mtags for sh in source-filterJune McEnroe 2021-01-20Generate tags for sh files in mtagsJune McEnroe Only matches functions declared at the beginnings of lines, but I'm fine with that. 2021-01-20Add messy sh lexerJune McEnroe Surprisingly seems to work for everything I looked at in my repos. 2021-01-20Add all target to git.causal.agency MakefileJune McEnroe 2021-01-20Remove Lua supportJune McEnroe Lua support is unused and the dlsym fwrite/write hacks horrify me. Clean it up. 2021-01-20Fix tests for diff spansJune McEnroe 2021-01-20Avoid matching ':' in make tagsJune McEnroe Otherwise a :: rule includes one of the ':'s in the tag name. 2021-01-19Prefer tag matches not preceded by [[:alnum:]]June McEnroe Otherwise the "id" in "void" matches for "void id". 2021-01-19Escape \ and / in mtags search patternsJune McEnroe 2021-01-20Use mtags in source-filterJune McEnroe 2021-01-19Add mtags to generate tags for make and mdocJune McEnroe 2021-01-19Map tags to IDs using only [[:alnum:]-._]June McEnroe 2021-01-19Don't use a pager if reading standard inputJune McEnroe 2021-01-19Support BSD make syntax and match *.amJune McEnroe These don't really go together, but... 2021-01-19Match tab following escaped newline in make assignmentsJune McEnroe Otherwise it ends up going into Shell state. 2021-01-18Allow matching lexers using first input lineJune McEnroe