libwine: Add a configure check for setrlimit.
diff --git a/configure b/configure
index f1e9b25..a03a85c 100755
--- a/configure
+++ b/configure
@@ -19379,6 +19379,7 @@
+
for ac_func in \
_lwp_create \
_lwp_self \
@@ -19428,6 +19429,7 @@
sched_yield \
select \
sendmsg \
+ setrlimit \
settimeofday \
sigaltstack \
sigprocmask \
diff --git a/configure.ac b/configure.ac
index 0904a60..7894a57 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1309,6 +1309,7 @@
sched_yield \
select \
sendmsg \
+ setrlimit \
settimeofday \
sigaltstack \
sigprocmask \
diff --git a/include/config.h.in b/include/config.h.in
index e1c5692..48c047d 100644
--- a/include/config.h.in
+++ b/include/config.h.in
@@ -587,6 +587,9 @@
/* Define to 1 if you have the `sendmsg' function. */
#undef HAVE_SENDMSG
+/* Define to 1 if you have the `setrlimit' function. */
+#undef HAVE_SETRLIMIT
+
/* Define to 1 if you have the `settimeofday' function. */
#undef HAVE_SETTIMEOFDAY
diff --git a/libs/wine/loader.c b/libs/wine/loader.c
index adbadd5..4406a32 100644
--- a/libs/wine/loader.c
+++ b/libs/wine/loader.c
@@ -608,6 +608,7 @@
*/
static void set_max_limit( int limit )
{
+#ifdef HAVE_SETRLIMIT
struct rlimit rlimit;
if (!getrlimit( limit, &rlimit ))
@@ -615,6 +616,7 @@
rlimit.rlim_cur = rlimit.rlim_max;
setrlimit( limit, &rlimit );
}
+#endif
}
@@ -631,8 +633,12 @@
void (*init_func)(void);
/* force a few limits that are set too low on some platforms */
+#ifdef RLIMIT_NOFILE
set_max_limit( RLIMIT_NOFILE );
+#endif
+#ifdef RLIMIT_AS
set_max_limit( RLIMIT_AS );
+#endif
wine_init_argv0_path( argv[0] );
build_dll_path();