git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH v2 1/6] mingw: correct exit-code for SIGALRM's SIG_DFL

From
Erik Faye-Lund <kusmabite@gmail.com>
Date
Dec 4, 2012, 08:10 UTC
Message-ID
<1354608642-5316-2-git-send-email-kusmabite@gmail.com>
In-Reply-To
<1354608642-5316-1-git-send-email-kusmabite@gmail.com>

Make sure SIG_DFL for SIGALRM exits with 128 + SIGALRM so other processes can diagnose why it exits.

While we're at it, make sure we only write to stderr if it's a terminal, and change the output to match that of Linux.

Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com>
---
 compat/mingw.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/compat/mingw.c b/compat/mingw.c
index afc892d..78e8f54 100644
--- a/compat/mingw.c
+++ b/compat/mingw.c
@@ -1538,8 +1538,11 @@ static sig_handler_t timer_fn = SIG_DFL;
 static unsigned __stdcall ticktack(void *dummy)
 {
 	while (WaitForSingleObject(timer_event, timer_interval) == WAIT_TIMEOUT) {
-		if (timer_fn == SIG_DFL)
-			die("Alarm");
+		if (timer_fn == SIG_DFL) {
+			if (isatty(STDERR_FILENO))
+				fputs("Alarm clock\n", stderr);
+			exit(128 + SIGALRM);
+		}
 		if (timer_fn != SIG_IGN)
 			timer_fn(SIGALRM);
 		if (one_shot)
-- 
1.8.0.4.g3c6fb4f.dirty

-- 
*** Please reply-to-all at all times ***
*** (do not pretend to know who is subscribed and who is not) ***
*** Please avoid top-posting. ***
The msysGit Wiki is here: https://github.com/msysgit/msysgit/wiki - Github accounts are free.

You received this message because you are subscribed to the Google
Groups "msysGit" group.
To post to this group, send email to msysgit@googlegroups.com
To unsubscribe from this group, send email to
msysgit+unsubscribe@googlegroups.com
For more options, and view previous threads, visit this group at
http://groups.google.com/group/msysgit?hl=en_US?hl=en
Previous: Erik Faye-LundNext: Erik Faye-Lund
Message 2 of 7 in “win32: support echo for terminal-prompt”
  1. 0/6 win32: support echo for terminal-promptErik Faye-Lund, Dec 4, 2012
  2. 1/6 mingw: correct exit-code for SIGALRM's SIG_DFLErik Faye-Lund, Dec 4, 2012
  3. 2/6 mingw: make fgetc raise SIGINT if apropriateErik Faye-Lund, Dec 4, 2012
  4. 3/6 compat/terminal: factor out echo-disablingErik Faye-Lund, Dec 4, 2012
  5. 4/6 compat/terminal: separate input and output handlesErik Faye-Lund, Dec 4, 2012
  6. 5/6 mingw: reuse tty-version of git_terminal_promptErik Faye-Lund, Dec 4, 2012
  7. 6/6 mingw: get rid of getpass implementationErik Faye-Lund, Dec 4, 2012

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.