summaryrefslogtreecommitdiff
path: root/Src/utils.c
AgeCommit message (Collapse)AuthorFilesLines
2016-11-2439982: $SPROMPT: Don't accept a spelling correction at space/tab.Daniel Shahaf1-4/+4
The patch also downscopes a couple of local variables, with no functional change.
2016-11-1739958: Add extra byte to PATH_MAX allocations.Peter Stephenson1-6/+6
This ensures we've got enough space for a null, although this isn't always needed.
2016-11-1539943: no need to compute arrlen() in arrdup_max() when max == 0.Barton E. Schaefer1-2/+3
2016-11-1539949: Special case for "-" in directory names.Peter Stephenson1-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.
2016-11-1439906: More multibyte optimisations for US-ASCII.Peter Stephenson1-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.
2016-11-0939886 based on 39877: Optimise arrdup to arrdup_max.Peter Stephenson1-0/+25
Only duplicate as much of the array as is needed.
2016-11-08unposted: follow up to 39867: don't need test against zeroPeter Stephenson1-1/+1
2016-11-0839867, tweaked: Use cast to unsigned char to test character.Peter Stephenson1-1/+1
We want the unsigned variant to be <= 0x7f. Use the normal STOUC() macro and turn this into a single test.
2016-11-0439825: optimise mb_metastrlenend() for 7-bit character.Peter Stephenson1-1/+16
As the shell relies intimately on US-ASCII as a subset we can skip the multibyte functions if we are dealing with a complete 7-bit character.
2016-09-2939470: failure to open a supposedly unique temp file name should result in ↵Barton E. Schaefer1-0/+4
an error Also band-aid for signal-related race conditions in temp file name generation
2016-09-1139252: internal: quotestring: Drop the 'e' parameter, which no caller uses.Daniel Shahaf1-23/+4
2016-08-2339087: fix 'conditionally uninitialized' variablesJun-ichi Takimoto1-1/+3
2016-08-2239046 + 39061: New :P history modifier.Daniel Shahaf1-6/+8
2016-08-0138971: Start using the new arrlen_ge() / arrlen_le() helpers.Daniel Shahaf1-1/+1
2016-08-0138973: Optimize indexing array parameters.Daniel Shahaf1-0/+40
% () { for 1 in $prefix/zsh/bin/zsh Src/zsh; do $1 -f -c 'a=( {1..1000000} ); repeat 3 time ( repeat 300 : $a[1] )'; done } ( repeat 300; do; : $a[1]; done; ) 1.68s user 0.01s system 98% cpu 1.718 total ( repeat 300; do; : $a[1]; done; ) 1.69s user 0.01s system 99% cpu 1.710 total ( repeat 300; do; : $a[1]; done; ) 1.69s user 0.01s system 99% cpu 1.714 total ( repeat 300; do; : $a[1]; done; ) 0.00s user 0.01s system 72% cpu 0.022 total ( repeat 300; do; : $a[1]; done; ) 0.00s user 0.01s system 72% cpu 0.022 total ( repeat 300; do; : $a[1]; done; ) 0.01s user 0.01s system 69% cpu 0.023 total
2016-06-0221603: Make read_poll more interruptible.Peter Stephenson1-1/+1
If we interrupted the first read we still did the fallback read. This is wrong.
2016-02-1137946: make rm * warnings more informative.Peter Stephenson1-4/+27
Now count files that would be deleted up to 100.
2016-02-0337868: add 'static' to file local variablesJun-ichi Takimoto1-2/+2
2016-01-2537780: Care printing error if nothing to print.Kamil Dudka1-3/+4
2016-01-2537776: Set errflag before calls to zwarning().Peter Stephenson1-2/+2
This avoids an attempt to call zerr() or zerrnam() recusrively.
2016-01-1937678: Now possible to quote "-" in pattern rangePeter Stephenson1-1/+1
2016-01-15unposted: Extend docstring of callhookfunc().Daniel Shahaf1-0/+3
2015-12-0837348: Tests and fix for ${(q+)...}.Peter Stephenson1-1/+1
Needs dupstring() for empty string case.
2015-12-0737344: restore old printable quoting, add ${(q+)...}.Peter Stephenson1-46/+218
The \C- form is only used inside quotedzputs(). ${(q+)...} outputs a quotedzputs() representation.
2015-12-0737331: Use a single chracter to represent an MB_INCOMPLETE.Peter Stephenson1-6/+10
This is as it is likely to appear as a single character in output even if it has multiple octets.
2015-12-0637326: comment only: multibyte string lenght/width countingPeter Stephenson1-0/+11
2015-12-0637314: upgrade quotedzputs() for non-printable output.Peter Stephenson1-27/+144
Use nicechar with $'..' quoting; upgrade nicechar() etc. to use suitable output.
2015-12-0337296: Avoid needless calloc().Daniel Shahaf1-11/+13
2015-11-2237191: fix strftime() expansion issue with %p and %P.Peter Stephenson1-4/+11
In some locales the output from this can validly be empty, so we need to treat them specially.
2015-10-24unposted: small typo againPeter Stephenson1-1/+1
2015-10-24unposted: small typoPeter Stephenson1-1/+1
2015-10-2436944: extend fd management to zsocketPeter Stephenson1-10/+15
2015-10-2436941: Mark file descripors in ztcp as used.Peter Stephenson1-0/+26
Allow such file descriptors to be either internal and closed on exec or external and so managed explicitly by module.
2015-10-0436773: limit CORRECT / CORRECT_ALL to directory names in cases where it is ↵Barton E. Schaefer1-19/+30
obvious that a directory is expected
2015-09-1936562: sanitize $PWD on import, per POSIXBarton E. Schaefer1-3/+17
2015-09-19cf. 36554: remove unnecessary pointer dereferenceBarton E. Schaefer1-1/+1
2015-09-1736552 plus test: fix Nularg string in quotestring(QT_DOLLARS)Barton E. Schaefer1-0/+6
2015-09-0136380: Avoid gcc case syntaxMikael Magnusson1-1/+2
2015-09-0136376: handle signals during read1char() so it is possible to interrupt ↵Barton E. Schaefer1-1/+6
correct/correctall prompts
2015-08-2136262: Replace fix for missing unmeta in chdir().Peter Stephenson1-4/+9
It was needed in the argument to one of a pair of lchdir()s rather than within zchdir(). Add tests for the case of a character with 0x83 within it.
2015-08-1836227: attempt to fix metafication problem with ztrftime.Peter Stephenson1-3/+27
fmt is treated as metafied on entry; use returned length to ensure we metafy or output the correct length if there are embedded nulls.
2015-08-0835928: '%-m' should work even if not supported by strftime(3)Jun-ichi Takimoto1-1/+1
Also clarify document.
2015-07-2535809: fix $((...)) completion by _expand widget.Peter Stephenson1-1/+19
This changes internal quoting of the form still including tokens not to add unnecessary internal backslashes.
2015-07-2335872: protect against NULL pointers in unmetaPeter Stephenson1-1/+4
2015-07-2235826: add getsparam_u() to return unmetafied string, use it for a number of ↵Barton E. Schaefer1-3/+7
references to non-special params
2015-07-0935745: ztrftime: Pass everything unhandled to the system strftime()Mikael Magnusson1-25/+54
2015-06-12Add non-metafied character length handling.Peter Stephenson1-6/+83
Use this in regex module and add test using $'\ua0'. Rename mb_metacharinit() to mb_charinit() as it does not involve metafied characters.
2015-06-0535386: expand tabs where useful in builtins outputing function.Peter Stephenson1-4/+39
Also add to zed -f. Option is -x <numm>.
2015-06-0235353: print -x and print -X expand tabsPeter Stephenson1-0/+102
2015-05-1035067: Add (b) parameter flag for pattern char backslashing.Peter Stephenson1-4/+19
Doc tweak from Daniel in 35071. Includes test.