about summary refs log tree commit diff
path: root/Src/utils.c
Commit message (Collapse)AuthorAgeFilesLines
* 45583/0008: Extend tests to prove that what remains of xsymlinks() handles ↵Daniel Shahaf2020-03-251-2/+0
| | | | symlink loops gracefully.
* 45583/0007: Remove code that is now unreachable.Daniel Shahaf2020-03-251-17/+4
|
* 45583/0006: Don't use xsymlinks() in 'whence -s'.Daniel Shahaf2020-03-251-4/+14
|
* 45583/0004: Fix segfault on resolving symlink loopsDaniel Shahaf2020-03-251-3/+3
|
* 45563: %z can be used for zlong in warnings and errorsPeter Stephenson2020-03-221-0/+9
|
* 45536: fix handling of 8bit character under C-localeJun-ichi Takimoto2020-03-171-2/+2
| | | | correctly escape unprintable 8bit character by using \M-
* 45487: Missing mod_export declarations for AIXPeter Stephenson2020-02-241-1/+1
|
* unposted: zerrmsg(): Fix macro guard missed in previous commitdana2019-12-261-2/+0
|
* internal: Allow %L in zerrmsg() in non-debug builds, too.Daniel Shahaf2019-12-261-2/+0
| | | | This will let error messages include long integers.
* 45064: Fix the mktemp() warning, in debug builds only.Daniel Shahaf2019-12-181-0/+25
| | | | | | | | | | | | On Linux, linking to mktemp() generates the following warning: . utils.o: In function `gettempname': ./Src/utils.c:2229: warning: the use of `mktemp' is dangerous, better use `mkstemp' or `mkdtemp' The warning cannot be disabled. Work around that by using mkstemp() instead, and massage its output so it behaves like mktemp(). See the new comment for further details.
* 44714: Take account of CDABLE_VARS while checking spellingJun-ichi Takimoto2019-08-291-0/+2
|
* 44307: allow for atoi() returning a negative numberOliver Kiddle2019-05-201-1/+1
|
* unposted (per 43938): Avoid segfault when unmetafying empty stringdana2018-12-301-1/+1
|
* 43953: Fix rounding/truncation error in %. time-format specifierdana2018-12-291-6/+15
| | | | | | | Also fixes an issue where %. couldn't be used more than once in a format string without strange results Tweaked very slightly per workers/43954
* 43790: failed mailstat could leak memoryKamil Dudka2018-11-091-3/+13
|
* unposted: internals: Document sepjoin().Daniel Shahaf2018-10-141-0/+8
|
* 43464: Another attachtty() fix.Peter Stephenson2018-09-161-0/+4
| | | | | | | | | If list_pipe_job triggered more than once we need to know the most recent process group leader, so record that both if the attach happened in the main shell on in entersubsh(). Also don't pass back proocess group for ESUB_ASYNC subshells.
* 43227: fix memory leaks in term{cap,info}.cJun-ichi Takimoto2018-08-011-0/+37
|
* 43075: Support nanosecond-precision time formattingdana2018-06-201-8/+14
| | | | | | | | * Teach ztrftime() %9. and %N for nanoseconds * Update prompt expansion to pass sub-second times for time formatting * Update zsh/stat to pass sub-second times for atime/mtime/ctime Patch heavily based on Oliver's earlier work @ workers/24059
* 42650: fix 42156 for zero-sized terminalsBarton E. Schaefer2018-04-151-5/+7
| | | | Also fix harmless no-op typo from hand-applying 42636 for previous commit.
* 42636: fix GLOB_DOTS for !(RM_STAR_SILENT)Barton E. Schaefer2018-04-151-4/+5
| | | | Also fix paste-o in older log entry
* 42607, CVE-2018-1100: check bounds on buffer in mail checkingOliver Kiddle2018-04-071-3/+5
|
* 42595: remove dead code flagged by coverityOliver Kiddle2018-04-071-3/+1
|
* 42560: silence sign-compare compiler warningsOliver Kiddle2018-03-301-3/+3
|
* 42539: prevent overflow of PATH_MAX-sized buffer in spelling correctionOliver Kiddle2018-03-281-5/+9
|
* 42538: Temporarily set umask for here document.Martijn Dekker2018-03-271-0/+4
| | | | Done while signals are queued.
* 42480: optimize $#var for single-byte character setsBarton E. Schaefer2018-03-251-1/+1
|
* 42518, CVE-2018-1071: check bounds when copying path in hashcmd()Oliver Kiddle2018-03-241-3/+3
|
* 42332: Special case unsigned printf formats.Peter Stephenson2018-01-311-0/+61
| | | | | For constants we can avoid a conversion to signed by examining the expression before passing to math eval.
* 42156: new CHECK_RUNNING_JOBS option demanded by bash groupiesPeter Stephenson2017-12-221-2/+2
| | | | | | | Also new job options. Also suppress debug error if rows or columns are reported as zero as this is normal without a physical terminal.
* unposted (cf. 41672): checkrmall: Record the 41672 bug in a TODO.Daniel Shahaf2017-09-211-0/+3
|
* unposted (cf. 41707): internal: Document the count==0 case of checkrmall().Daniel Shahaf2017-09-211-1/+3
|
* unposted: internal: Document zreaddir().Daniel Shahaf2017-09-111-0/+10
|
* Revert "41499 (with one further tweak): POSIX_STRINGS behaviour."Peter Stephenson2017-08-081-18/+2
| | | | | | | This reverts commit 2eacbef91913fe967335812900d43cf2edfa54d9. Conflicts: ChangeLog
* 41499 (with one further tweak): POSIX_STRINGS behaviour.Peter Stephenson2017-08-071-2/+18
| | | | | Ignore a terminating delimiter when splitting as separators despite being called separators are terminators.
* 41484: Make ${(q+)...} quote backsleshes.Martijn Dekker2017-08-031-1/+5
|
* 22760: fix partial string length reports with NO_MULTIBYTEPeter Stephenson2017-07-021-1/+1
|
* 41090: Replace iswprint() if unicode9 is enabled.Jun-ichi Takimoto2017-05-121-2/+2
| | | | If wcwidth() or iswprint() is broken, force enable unicode9.
* 40181: Fix buffer overrun in xsymlinks.Peter Stephenson2017-05-091-3/+11
| | | | | There was no check for copying to the internal xbuf2 for a preliminary test.
* 40994: unmeta_one() need not count MetaJun-ichi Takimoto2017-04-231-8/+1
|
* 40935: User names need metafying.Orlov Sergey2017-04-101-3/+3
| | | | | On some systems they can contain 8-bit characters and on all systems this is logically correct anyway.
* 40763: count wide characters and Cmatcher pointers more sanely in ↵Barton E. Schaefer2017-03-081-0/+42
| | | | | | | cfp_matcher_pats(), and count characters in pattern_match() the same way to stay in sync Might not fix wide-char matching in completion matcher-lists but should avoid wild pointer crash
* 40760: Always tokenize unquoted - to Dash.Peter Stephenson2017-03-071-3/+7
| | | | | | This fixes use of pattern match character ranges in unusual contexts. Attempt to detect a tokenized - in cases where we don't care.
* 39982: $SPROMPT: Don't accept a spelling correction at space/tab.Daniel Shahaf2016-11-241-4/+4
| | | | | The patch also downscopes a couple of local variables, with no functional change.
* 39958: Add extra byte to PATH_MAX allocations.Peter Stephenson2016-11-171-6/+6
| | | | | This ensures we've got enough space for a null, although this isn't always needed.
* 39943: no need to compute arrlen() in arrdup_max() when max == 0.Barton E. Schaefer2016-11-151-2/+3
|
* 39949: Special case for "-" in directory names.Peter Stephenson2016-11-151-31/+39
| | | | | It can be sh-tokenized to Dash to allow for appearing in ranges after substitution, so needs to be turned back to "-" in that case.
* 39906: More multibyte optimisations for US-ASCII.Peter Stephenson2016-11-141-3/+23
| | | | | This treats characters 0 to 0x7f as single byte US-ASCII along the lines we already do in other places in the code.
* 39886 based on 39877: Optimise arrdup to arrdup_max.Peter Stephenson2016-11-091-0/+25
| | | | Only duplicate as much of the array as is needed.
* unposted: follow up to 39867: don't need test against zeroPeter Stephenson2016-11-081-1/+1
|