]> git.eshelyaron.com Git - emacs.git/commitdiff
[HAVE_SETRLIMIT]: Include time.h and resource.h.
authorRichard M. Stallman <rms@gnu.org>
Sun, 1 Sep 1996 20:47:10 +0000 (20:47 +0000)
committerRichard M. Stallman <rms@gnu.org>
Sun, 1 Sep 1996 20:47:10 +0000 (20:47 +0000)
(main) [HAVE_SETRLIMIT]: Call setrlimit to extend the stack limit.
New local `rlim'.

src/emacs.c

index 2934750130fc19a16fcc16579a35f0feee0d9b2f..57e581d142d76317f9789cf634c759de22ce90a4 100644 (file)
@@ -45,6 +45,11 @@ Boston, MA 02111-1307, USA.  */
 #include "syssignal.h"
 #include "process.h"
 
+#ifdef HAVE_SETRLIMIT
+#include <sys/time.h>
+#include <sys/resource.h>
+#endif
+
 #ifndef O_RDWR
 #define O_RDWR 2
 #endif
@@ -429,6 +434,9 @@ main (argc, argv, envp)
   int skip_args = 0;
   extern int errno;
   extern sys_nerr;
+#ifdef HAVE_SETRLIMIT
+  struct rlimit rlim;
+#endif
 
 #ifdef LINUX_SBRK_BUG
   __sbrk (1);
@@ -501,6 +509,15 @@ main (argc, argv, envp)
 #endif /* LINK_CRTL_SHARE */
 #endif /* VMS */
 
+#ifdef HAVE_SETRLIMIT
+  /* Extend the stack space available.  */
+  if (!getrlimit (RLIMIT_STACK, &rlim))
+    {
+      rlim.rlim_cur = rlim.rlim_max;
+      setrlimit (RLIMIT_STACK, &rlim);
+    }
+#endif
+
   /* Record (approximately) where the stack begins.  */
   stack_bottom = &stack_bottom_variable;