415 Commits

Author SHA1 Message Date
Chet Ramey 2d4ba0c618 fixed a bug with expanding unquoted $* when the separator is not whitespace and one or more of the positional parameters ends with the separator, resulting in an extra blank field being generated; fixed an issue with adjusting SHLVL in subshells that caused the environment to be rebuilt too many times; fix to make sure function substitution doesn't leave the -v option unset 2026-05-20 10:18:32 -04:00
Chet Ramey 330223688c fix problem with trapped signals arriving while running SIGINT traps; new `rev' loadable builtin 2026-04-28 15:06:45 -04:00
Chet Ramey 1f292e433e fix for heuristic to detect case statements when parsing $() command substitutions to find history expansion; fix for history not being saved if a SIGHUP arrives during $PROMPT_COMMAND execution; workaround for Cygwin bug that results in bash incorrectly calculating the system pipe size 2026-03-09 14:54:45 -04:00
Chet Ramey d0b41c2c5f fix cosmetic error when printing if commands containing here-documents in the body; compiling -DSTRICT_POSIX now forces posix-mode shells to expand redirections before assignment statements preceding simple commands 2026-03-03 11:14:10 -05:00
Chet Ramey 044c1acc91 fix posix-mode tilde expansion so non-assignment words containing "~:" do not undergo tilde expansion; heuristic to skip case statements while performing history expansion on $() command substitutions; undo redirections before running an EXIT trap when executing a builtin in a subshell 2026-02-17 13:08:27 -05:00
Chet Ramey b805bbec80 new `jobid' loadable builtin like ash-based shells; fix for nofork command substitution when followed by an asynchronous subshell using GNU nohup; fix for nofork command substitution to move the file descriptor moved to the anonymous file out of the user-accessible range 2026-01-23 16:39:00 -05:00
Chet Ramey 8ea1a222df the `history' builtin prints error messages for certain read and write errors; implementation of new form of nofork command substitution that does not remove trailing newlines 2026-01-18 17:48:33 -05:00
Chet Ramey e7c3acf108 change posix-mode implicit redirection from /dev/null for asynchronous commands so that 0<&0 does not count as an explicit redirection for austin-group interp 1913; fix spurious debug message about job notification for -c command; fix error handling for wait builtin if there are no children in a subshell 2026-01-06 10:46:14 -05:00
Chet Ramey a43e08df2d history builtin has a -H option to display history entries as they would be written to the history file; history builtin now takes a START-END range specifier for listing; fix stray semicolon when printing shell functions containing a case command; changes to stdin redirection detection in preparation for POSIX interp 1913 2026-01-05 11:57:18 -05:00
Chet Ramey 4b27601dfd fixes for several bugs found via fuzzing: overflow in $'...' hex expansion; fix for accessing freed memory when reading input from stdin and using multiple redirections to stdin; fix for pointer aliasing problem after a syntax error while executing a command string 2025-12-30 16:06:40 -05:00
Chet Ramey 2cdb2f9b31 allow locale's decimal point as radix character when parsing fixed-point decimal into seconds and fractional seconds; handle case of shell script file descriptor being made non-blocking; fix smalkl memory leak in programmable completion of shell option names; fix for patsub_replacement behavior when BASH_COMPAT = 42 and the replacement string is quoted; fix for readine when changing show-mode-in-prompt variable 2025-12-17 09:59:56 -05:00
Chet Ramey f27bf94a79 implementation of printf '%N$' numbered argument conversion specifier, compatible with coreutils 2025-12-05 15:50:38 -05:00
Chet Ramey 4e705ed53a fix expansion of $* and $@ in contexts where word splitting is not performed to be more consistent across different word expansions; fix pathname canonicalization when setting $BASH 2025-11-24 09:51:15 -05:00
Chet Ramey 81d8584268 minor test suite updates; fix for export string when a variable from a function temporary environment is converted to an array variable; use fpurge to discard builtin output after a SIGINT in an interactive shell; fix for words containing quoted strings and {forward,backward}-shellword; experimental fix to discard a bgpid when a child with the same pid is created only if the new child is also an asynchronous pid; change read builtin to return >1 on read error, since 1 is reserved for EOF 2025-11-11 11:36:53 -05:00
Chet Ramey fbd078be0a builtins now return success if supplied --help; use groff to build HTML man pages; reset mbstate if $'...' strings read an invalid multibyte sequence; read -t 0 now looks at other options (-n/-N/-d) and sets the terminal state appropriately 2025-10-01 10:44:10 -04:00
Chet Ramey cf8a2518c8 fix for potential read builtin crash if bash gets a signal before read reads any input; make wait -f work if there are no pid or job arguments and update documentation; save and restore variable reflected in $BASH_COMMAND around shell function calls 2025-09-18 17:54:55 -04:00
Chet Ramey 0864568359 fix for nofork comsubs undoing enclosing command's redirections; fix for binding _ variable in the temporary environment; fix for crash when making special variables arrays; accommodate IFS as array variable; fix for SIGINT arriving while cleaning up a readline incremental search 2025-08-20 11:08:28 -04:00
Chet Ramey 80a8f650a1 change overflow behavior in fltexpr; fix for readline event hook; fix for internal quoting of array subscripts in arithmetic expression contexts 2025-07-11 11:48:01 -04:00
Chet Ramey 727b8d3663 addition to POSIX mode documentation; new translations; update copyrights on some files; update formatted documentation; changes to cut/lcut loadable builtins when supplied -a ARRAY 2025-06-06 12:16:11 -04:00
Chet Ramey dbe4256d5e fix for namerefs referencing an unset array index with nounset enabled; addition to buildconf.h.in for C23 compilers 2025-05-30 10:11:03 -04:00
Chet Ramey 870ad4c92b some fixes for static analysis findings; fix for brace expansion being too greedy checking sequence expressions; fix for strip targets when cross-compiling 2025-05-19 09:10:57 -04:00
Chet Ramey 482872ed8b fix to preserve blank lines when reading multiline entries from a history file; fix for completion with quoted command delimiters; updated translations 2025-04-18 11:08:27 -04:00
Chet Ramey e608233770 revert change that suppressed array subscript expansion when called by the let builtin; fix default file descriptor for <> redirection when printing command 2025-02-24 11:36:49 -05:00
Chet Ramey c3ca11424d fix issue with redirections to bash input file descriptor; new minimal chmod builtin; posix mode change for kill builtin return status; perform additional validation on brace expansion sequence expressions 2025-02-12 11:18:16 -05:00
Chet Ramey 0390b4354a posix change for undoing redirections after failed exec; change readline to set lines and columns after SIGTSTP/SIGCONT 2025-01-28 10:15:16 -05:00
Chet Ramey 42c49d621d fix issue with internally quoting multibyte characters; the let builtin now suppresses additional array subscript expansion; small change to how readline export-completions displays filenames; new loadable builtin to do floating-point arithmetic 2025-01-17 11:41:49 -05:00
Chet Ramey 5114e17172 fix issue with failed history expansion changing the history list offset; fix some tests to avoid problems with error messages that differ between systems; fix issue with readline rl_abort not clearing any pending command to execute 2024-12-30 10:45:14 -05:00
Chet Ramey fa68e6da80 More Makefile updates; updates for bash-5.3-beta 2024-11-15 11:15:23 -05:00
Chet Ramey b116cfe57d fix for readline redisplay issue in C locale; fix for small memory leak in termcap replacement library; updates to formatted documentation; fix problem with distclean and y.tab.h; Makefile clean targets updates 2024-11-08 11:13:57 -05:00
Chet Ramey bf093e31ae final set of documentation updates; documentation directory cleanups 2024-11-02 14:50:28 -04:00
Chet Ramey 254081c097 fix for set -e and compound commands inverting return status; tty fix for fg' from a key binding; posix mode wait -n' can return notified jobs; off-by-one error in history word tokenization; new configure option to set bash_source_fullpath 2024-09-27 12:00:46 -04:00
Chet Ramey 2610d40b32 documentation updates; fix for null commands with redirection expansion errors; changes to job notifications for interactive shells sourcing files; fix underflow issue with word_top 2024-08-28 11:42:10 -04:00
Chet Ramey cf694865de optimize asynchronous function invocations; fix for running return from trap while sourcing a file; restore completion function if read -e is interrupted 2024-08-15 16:37:54 -04:00
Chet Ramey ad1f497a84 use name as GLOBSORT secondary sort key; new GLOBSORT sort specifier: `numeric'; let readonly and export work on local variables at previous scopes for both array and scalar variables 2024-06-21 10:51:53 -04:00
Chet Ramey 886e4e68be better parser error messages; add -p option to source builtin 2024-06-21 10:38:39 -04:00
Chet Ramey d17d185fff fix for crash without arrays built in; allow some job status changes while the jobs list is frozen; change format for interactive shell terminated job notifications; allow some job notifications while running traps 2024-05-06 11:15:17 -04:00
Chet Ramey 9c430f6bf3 enable MULTIPLE_COPROCS; bind -p/-P can print out bindings for individual command names; changes to Makefile to remove MFLAGS; simplify build tools by assuming C90 compilation environment for better cross-compiling support 2024-04-26 16:51:04 -04:00
Chet Ramey 8c8daff1e3 minor updates to several tests 2024-04-22 09:19:14 -04:00
Chet Ramey 136cdf8108 posix change for cd; fix for command word completion where the command names contain spaces; fix for error-and-output redirection with quoted filename 2024-04-10 21:17:29 -04:00
Chet Ramey 4f2595eff3 more fixes for using bool and the stdckdint functions for integer overflow; another update to test from coreutils-9.2 changes; fix memleak in parser state on parse error; Makefile changes for macOS 2024-03-28 12:16:15 -04:00
Chet Ramey b1e7f68032 add stdbool.h detection and replacement for bool; use ckd_mul/ckd_add/ckd_sub where appropriate; update overflow detection in brace expansion and printf builtin 2024-03-18 11:45:39 -04:00
Chet Ramey 167a9248f9 add more overflow handling for printf builtin; start incorporating C23 stdckdint ; rework PRIdMAX replacements 2024-03-15 12:55:39 -04:00
Chet Ramey cc51fb3c65 avoid executing unsafe functions if we get a terminating signal while handling SIGCHLD; reject attempts to modify some attributes for readonly variables; more changes for unlocked stdio functions; quoting fixes for uncommon cases where IFS = ^A and the word is not being split 2024-02-20 09:53:58 -05:00
Chet Ramey e1dd98a1db additional error checking for declare; changes for MSYS32; add support for unlocked-io stdio functions; several C23 changes 2024-02-16 10:55:13 -05:00
Chet Ramey fa0b002927 fix for dequoting words in pretty-print mode; posix mode changes for readonly/export invalid identifier errors 2024-01-02 10:42:34 -05:00
Chet Ramey ba57a3e752 readline fix for do-lowercase-version; fix for reading here-documents from aliases 2023-12-05 11:54:24 -05:00
Chet Ramey d5ab50bc02 fix for ssh infinite loop when SSH_SOURCE_BASHRC is defined and bash is run in a comsub in .bashrc; implement posix interp 1009 in posix mode 2023-12-04 16:40:00 -05:00
Chet Ramey 55a224da44 fix for fdflags loadable builtin; new strptime loadable builtin; enable -f doesn't fall back to current directory if using BASH_LOADABLES_PATH; new operator for rl_complete_internal that just dumps possible completions 2023-11-24 12:39:17 -05:00
Chet Ramey b30389070a renamed several functions beginning with legal_; changed all callers 2023-11-06 09:26:02 -05:00
Chet Ramey b348b871b4 small change to brace expansion to inhibit some error messages; changes to printf builtin for precision and field widths 2023-10-23 09:50:02 -04:00