summaryrefslogtreecommitdiff
path: root/builtins
diff options
context:
space:
mode:
Diffstat (limited to 'builtins')
-rw-r--r--builtins/fc.def4
-rw-r--r--builtins/read.def1
-rw-r--r--builtins/test.def6
-rw-r--r--builtins/ulimit.def8
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