diff options
author | Peter Stephenson <pws@zsh.org> | 2014-06-26 10:48:19 +0100 |
---|---|---|
committer | Peter Stephenson <pws@zsh.org> | 2014-06-26 10:48:19 +0100 |
commit | e0dccff13e0c190e75d0a8d40537ea96abfecb93 (patch) | |
tree | d90ddd2f5d2d6b205d36ff7bf6adccf7bdb6a36e /Src | |
parent | 920db696cb53122bec0c8a83087852e7e8c018f0 (diff) | |
download | zsh-e0dccff13e0c190e75d0a8d40537ea96abfecb93.tar.gz zsh-e0dccff13e0c190e75d0a8d40537ea96abfecb93.tar.xz zsh-e0dccff13e0c190e75d0a8d40537ea96abfecb93.zip |
32799: resource NTHR not well handled on NetBSD
Diffstat (limited to 'Src')
-rw-r--r-- | Src/Builtins/rlimits.c | 23 |
1 files changed, 20 insertions, 3 deletions
diff --git a/Src/Builtins/rlimits.c b/Src/Builtins/rlimits.c index 0bcafda7f..9da31831d 100644 --- a/Src/Builtins/rlimits.c +++ b/Src/Builtins/rlimits.c @@ -32,12 +32,17 @@ #if defined(HAVE_GETRLIMIT) && defined(RLIM_INFINITY) -#ifdef RLIMIT_POSIXLOCKS +#if defined(HAVE_RLIMIT_POSIXLOCKS) && !defined(HAVE_RLIMIT_LOCKS) # define RLIMIT_LOCKS RLIMIT_POSIXLOCKS +# define HAVE_RLIMIT_LOCKS 1 #endif -#ifdef RLIMIT_NTHR +#if defined(HAVE_RLIMIT_NTHR) && !defined(HAVE_RLIMIT_PTHREAD) # define RLIMIT_PTHREAD RLIMIT_NTHR +# define HAVE_RLIMIT_PTHREAD 1 +# define THREAD_FMT "-T: threads " +#else +# define THREAD_FMT "-T: threads per process " #endif enum { @@ -373,7 +378,7 @@ printulimit(char *nam, int lim, int hard, int head) # ifdef HAVE_RLIMIT_PTHREAD case RLIMIT_PTHREAD: if (head) - printf("-T: threads per process "); + printf("%s", THREAD_FMT); break; # endif /* HAVE_RLIMIT_PTHREAD */ # ifdef HAVE_RLIMIT_NICE @@ -860,6 +865,13 @@ bin_ulimit(char *name, char **argv, UNUSED(Options ops), UNUSED(int func)) case 'r': res = RLIMIT_RTPRIO; break; +# else +# ifdef HAVE_RLIMIT_NTHR + /* For compatibility with sh on NetBSD */ + case 'r': + res = RLIMIT_NTHR; + break; +# endif /* HAVE_RLIMIT_NTHR */ # endif # ifdef HAVE_RLIMIT_NPTS case 'p': @@ -876,6 +888,11 @@ bin_ulimit(char *name, char **argv, UNUSED(Options ops), UNUSED(int func)) res = RLIMIT_KQUEUES; break; # endif +# ifdef HAVE_RLIMIT_PTHREAD + case 'T': + res = RLIMIT_PTHREAD; + break; +# endif default: /* unrecognised limit */ zwarnnam(name, "bad option: -%c", *options); |