diff --git a/src/server/server.c b/src/server/server.c
index fa50f0da962d44620a17de51c1a24dd7415798f8..79a5c2dded88e002e4b2faba608390dcc853fe37 100644
--- a/src/server/server.c
+++ b/src/server/server.c
@@ -17,6 +17,7 @@
 #include <string.h>
 #include <limits.h>
 #include <stdarg.h>
+#include <signal.h>
 
 #define	DEBUG_TRACE_CLIENT	0
 
@@ -119,6 +120,8 @@ void Server_Start(void)
 	struct sockaddr_in	server_addr, client_addr;
 
 	atexit(Server_Cleanup);
+	// Ignore SIGPIPE (stops crashes when the client exits early)
+	signal(SIGPIPE, SIG_IGN);
 
 	// Create Server
 	giServer_Socket = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP);