--- mate-terminal-1.14.0/src/terminal.c.~1~	2016-01-20 17:27:55.000000000 +0300
+++ mate-terminal-1.14.0/src/terminal.c	2016-07-26 11:56:17.940350521 +0300
@@ -26,6 +26,7 @@
 #include <stdlib.h>
 #include <time.h>
 #include <unistd.h>
+#include <sys/resource.h>
 
 #include <glib.h>
 #include <glib/gstdio.h>
@@ -535,6 +536,7 @@
 	GError *error = NULL;
 	char *working_directory;
 	int ret = EXIT_SUCCESS;
+	struct rlimit rlim;
 
 	setlocale (LC_ALL, "");
 
@@ -543,6 +545,15 @@
 	textdomain (GETTEXT_PACKAGE);
 
 	_terminal_debug_init ();
+	
+	if (getrlimit(RLIMIT_NOFILE, &rlim) == 0)
+	{
+		rlim.rlim_cur *= 4;
+		if (rlim.rlim_cur > rlim.rlim_max)
+			rlim.rlim_cur = rlim.rlim_max;
+		setrlimit(RLIMIT_NOFILE, &rlim);
+	}
+
 
 	/* Make a NULL-terminated copy since we may need it later */
 	argv_copy = g_new (char *, argc + 1);