]> git.eshelyaron.com Git - emacs.git/commitdiff
[HAVE_GETRLIMIT]: Include sys/resource.h.
authorRichard M. Stallman <rms@gnu.org>
Mon, 20 Feb 2006 00:00:18 +0000 (00:00 +0000)
committerRichard M. Stallman <rms@gnu.org>
Mon, 20 Feb 2006 00:00:18 +0000 (00:00 +0000)
(check_memory_limits) [HAVE_GETRLIMIT]: Use getrlimit.

src/vm-limit.c

index fb127b27b74496363db67876324eeccf22de6958..48d13c323ae247959a7fedf04a74bf699dc29aea 100644 (file)
@@ -33,6 +33,10 @@ typedef void *POINTER;
 
 #include "mem-limits.h"
 
+#ifdef HAVE_GETRLIMIT
+#include <sys/resource.h>
+#endif
+
 /*
   Level number of warnings already issued.
   0 -- no warnings issued.
@@ -61,6 +65,19 @@ check_memory_limits ()
   unsigned long five_percent;
   unsigned long data_size;
 
+#ifdef HAVE_GETRLIMIT
+  struct rlimit {
+    rlim_t rlim_cur;
+    rlim_t rlim_max;
+  } rlimit;
+
+  getrlimit (RLIMIT_DATA, &rlimit);
+
+  five_percent = rlimit.rlim_max / 20;
+  data_size = rlimit.rlim_cur;
+
+#else /* not HAVE_GETRLIMIT */
+
   if (lim_data == 0)
     get_lim_data ();
   five_percent = lim_data / 20;
@@ -74,6 +91,8 @@ check_memory_limits ()
   cp = (char *) (*__morecore) (0);
   data_size = (char *) cp - (char *) data_space_start;
 
+#endif /* not HAVE_GETRLIMIT */
+
   if (warn_function)
     switch (warnlevel)
       {