From f12ca5fd8ee8922c6950a398e21286f2d59a428a Mon Sep 17 00:00:00 2001 From: Peter Stephenson Date: Mon, 4 Apr 2005 10:00:25 +0000 Subject: Toby Peterson: 21083: RLIMIT_AS and RLIMIT_RSS are the same in Mac OX X ut_name needs to be ut_user in struct utmpx --- Src/Builtins/rlimits.c | 4 ++-- Src/watch.c | 13 +++++++++---- 2 files changed, 11 insertions(+), 6 deletions(-) (limited to 'Src') diff --git a/Src/Builtins/rlimits.c b/Src/Builtins/rlimits.c index 9256f25b2..922a182a2 100644 --- a/Src/Builtins/rlimits.c +++ b/Src/Builtins/rlimits.c @@ -242,7 +242,7 @@ printulimit(char *nam, int lim, int hard, int head) # endif /* HAVE_RLIMIT_MEMLOCK */ /* If RLIMIT_VMEM and RLIMIT_RSS are defined and equal, avoid * * duplicate case statement. Observed on QNX Neutrino 6.1.0. */ -# if defined(HAVE_RLIMIT_RSS) && !defined(RLIMIT_VMEM_IS_RSS) +# if defined(HAVE_RLIMIT_RSS) && !defined(RLIMIT_VMEM_IS_RSS) && !defined(RLIMIT_RSS_IS_AS) case RLIMIT_RSS: if (head) printf("-m: resident set size (kbytes) "); @@ -834,7 +834,7 @@ bin_ulimit(char *name, char **argv, UNUSED(Options ops), UNUSED(int func)) case RLIMIT_VMEM: # endif /* HAVE_RLIMIT_VMEM */ /* ditto RLIMIT_VMEM and RLIMIT_AS */ -# if defined(HAVE_RLIMIT_AS) && !defined(RLIMIT_VMEM_IS_AS) +# if defined(HAVE_RLIMIT_AS) && !defined(RLIMIT_VMEM_IS_AS) && !defined(RLIMIT_RSS_IS_AS) case RLIMIT_AS: # endif /* HAVE_RLIMIT_AS */ # ifdef HAVE_RLIMIT_AIO_MEM diff --git a/Src/watch.c b/Src/watch.c index 6fe77afcd..9b2c22bdd 100644 --- a/Src/watch.c +++ b/Src/watch.c @@ -103,6 +103,9 @@ # ifdef HAVE_STRUCT_UTMPX_UT_HOST # define WATCH_UTMP_UT_HOST 1 # endif +# ifdef __APPLE__ +# define ut_name ut_user +# endif #endif #if !defined(WATCH_STRUCT_UTMP) && defined(HAVE_STRUCT_UTMP) && defined(REAL_UTMP_FILE) @@ -491,8 +494,6 @@ dowatch(void) int uct, wct; s = watch; - if (!(fmt = getsparam("WATCHFMT"))) - fmt = DEFAULT_WATCHFMT; holdintr(); if (!wtab) { @@ -542,6 +543,9 @@ dowatch(void) free(utab); return; } + queue_signals(); + if (!(fmt = getsparam("WATCHFMT"))) + fmt = DEFAULT_WATCHFMT; while ((uct || wct) && !errflag) if (!uct || (wct && ucmp(uptr, wptr) > 0)) wct--, watchlog(0, wptr++, s, fmt); @@ -549,6 +553,7 @@ dowatch(void) uct--, watchlog(1, uptr++, s, fmt); else uptr++, wptr++, wct--, uct--; + unqueue_signals(); free(wtab); wtab = utab; wtabsz = utabsz; @@ -557,7 +562,7 @@ dowatch(void) /**/ int -bin_log(char *nam, char **argv, char *ops, int func) +bin_log(UNUSED(char *nam), UNUSED(char **argv), UNUSED(Options ops), UNUSED(int func)) { if (!watch) return 1; @@ -579,7 +584,7 @@ void dowatch(void) /**/ int -bin_log(char *nam, char **argv, char *ops, int func) +bin_log(char *nam, char **argv, Options ops, int func) { return bin_notavail(nam, argv, ops, func); } -- cgit 1.4.1