From f24eb9e549f03df5d7f28c591d787ac8898ce5c9 Mon Sep 17 00:00:00 2001
From: "Joseph C. Lehner" <joseph.c.lehner@gmail.com>
Date: Fri, 13 Jan 2017 11:22:57 +0100
Subject: [PATCH] Show exit prompt in Windows when run from console

---
 main.c | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/main.c b/main.c
index 2830cf7..66d7d80 100644
--- a/main.c
+++ b/main.c
@@ -104,6 +104,20 @@ void require_admin()
 
 	fprintf(stderr, "Warning: failed to check administrator privileges\n");
 }
+
+void show_exit_prompt()
+{
+	DWORD pid;
+	HWND win = GetConsoleWindow();
+	if (!win || !GetWindowThreadProcessId(win, &pid)) {
+		return;
+	}
+
+	if (GetCurrentProcessId() == pid) {
+		printf("Press any key to exit\n");
+		getch();
+	}
+}
 #else
 void require_admin()
 {
@@ -139,6 +153,8 @@ int main(int argc, char **argv)
 	char *windir = NULL;
 	WSADATA wsa;
 
+	atexit(&show_exit_prompt);
+
 	val = WSAStartup(MAKEWORD(2, 2), &wsa);
 	if (val != 0) {
 		win_perror2("WSAStartup", val);
-- 
2.25.1