diff options
Diffstat (limited to 'builtins')
-rw-r--r-- | builtins/fc.def | 4 | ||||
-rw-r--r-- | builtins/read.def | 1 | ||||
-rw-r--r-- | builtins/test.def | 6 | ||||
-rw-r--r-- | builtins/ulimit.def | 8 |
4 files changed, 17 insertions, 2 deletions
diff --git a/builtins/fc.def b/builtins/fc.def index ebe3683..7e3f811 100644 --- a/builtins/fc.def +++ b/builtins/fc.def @@ -156,11 +156,11 @@ static void fc_addhist __P((char *)); #endif /* String to execute on a file that we want to edit. */ -#define FC_EDIT_COMMAND "${FCEDIT:-${EDITOR:-vi}}" +#define FC_EDIT_COMMAND "${FCEDIT:-${EDITOR:-$(command -v editor || echo vi)}}" #if defined (STRICT_POSIX) # define POSIX_FC_EDIT_COMMAND "${FCEDIT:-ed}" #else -# define POSIX_FC_EDIT_COMMAND "${FCEDIT:-${EDITOR:-ed}}" +# define POSIX_FC_EDIT_COMMAND "${FCEDIT:-${EDITOR:-$(command -v editor || echo ed)}}" #endif int diff --git a/builtins/read.def b/builtins/read.def index 914ebd7..4ba3375 100644 --- a/builtins/read.def +++ b/builtins/read.def @@ -472,6 +472,7 @@ add_char: if (retval < 0) { builtin_error (_("read error: %d: %s"), fd, strerror (errno)); + run_unwind_frame ("read_builtin"); return (EXECUTION_FAILURE); } #endif diff --git a/builtins/test.def b/builtins/test.def index e51d00b..44f48a4 100644 --- a/builtins/test.def +++ b/builtins/test.def @@ -60,6 +60,9 @@ File operators: FILE1 -ef FILE2 True if file1 is a hard link to file2. +All file operators except -h and -L are acting on the target of a symbolic +link, not on the symlink itself, if FILE is a symbolic link. + String operators: -z STRING True if string is empty. @@ -89,6 +92,9 @@ Other operators: Arithmetic binary operators return true if ARG1 is equal, not-equal, less-than, less-than-or-equal, greater-than, or greater-than-or-equal than ARG2. + +See the bash manual page bash(1) for the handling of parameters (i.e. +missing parameters). $END $BUILTIN [ diff --git a/builtins/ulimit.def b/builtins/ulimit.def index 8cfcd4f..1fe2a7a 100644 --- a/builtins/ulimit.def +++ b/builtins/ulimit.def @@ -34,6 +34,7 @@ option is given, it is interpreted as follows: -a all current limits are reported -c the maximum size of core files created -d the maximum size of a process's data segment + -e the maximum scheduling priority (`nice') -f the maximum size of files created by the shell -i the maximum number of pending signals -l the maximum size a process may lock into memory @@ -41,6 +42,7 @@ option is given, it is interpreted as follows: -n the maximum number of open file descriptors -p the pipe buffer size -q the maximum number of bytes in POSIX message queues + -r the maximum rt priority -s the maximum stack size -t the maximum amount of cpu time in seconds -u the maximum number of user processes @@ -202,6 +204,9 @@ static RESOURCE_LIMITS limits[] = { #ifdef RLIMIT_DATA { 'd', RLIMIT_DATA, 1024, "data seg size", "kbytes" }, #endif +#ifdef RLIMIT_NICE + { 'e', RLIMIT_NICE, 1, "max nice", (char *)NULL}, +#endif /* RLIMIT_NICE */ { 'f', RLIMIT_FILESIZE, 1024, "file size", "blocks" }, #ifdef RLIMIT_SIGPENDING { 'i', RLIMIT_SIGPENDING, 1, "pending signals", (char *)NULL }, @@ -217,6 +222,9 @@ static RESOURCE_LIMITS limits[] = { #ifdef RLIMIT_MSGQUEUE { 'q', RLIMIT_MSGQUEUE, 1, "POSIX message queues", "bytes" }, #endif +#ifdef RLIMIT_RTPRIO + { 'r', RLIMIT_RTPRIO, 1, "max rt priority", (char *)NULL}, +#endif /* RLIMIT_RTPRIO */ #ifdef RLIMIT_STACK { 's', RLIMIT_STACK, 1024, "stack size", "kbytes" }, #endif |