summaryrefslogtreecommitdiffstats
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
...
* bfstd: Fix printable_len() off-by-oneTavian Barnes2023-09-061-0/+15
| | | | | | | If xmbrtowc() fails, or if xiswprint() is false, then we shouldn't include that wide char in the printable length. Fixes: 19c96abe0a1ee56cf206fd5e87defb1fd3e0daa5
* bfstd: Fix an OOB string index in xmbrtowc()Tavian Barnes2023-09-062-0/+22
| | | | | | | | | | | | | | | | | | | | | | This bug could be reproduced with something like $ bfs -samefile $'\xFA\xFA' bfs: error: bfs: dstrnescat@src/dstring.c:252: wordesc() result truncated or worse, with -DNDEBUG, $ bfs -samefile $'.....................\xFA\xFA' bfs: error: bfs -samefile $'.....................\xFA\xFA\x00\x55\x53\x45\x52\x3D\x74\x61\x76\x69\x61\x6E\x61\x74\x6F\x72 bfs: error: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ bfs: error: No such file or directory. which prints the memory after the end of the string (in this case, the environment variable USER=tavianator). The bug was caused by the line `*i += len`, which was intended to be `*i = len`. But actually, the right behaviour seems to be `*i += 1`. Fixes: 19c96abe0a1ee56cf206fd5e87defb1fd3e0daa5
* Work around https://github.com/llvm/llvm-project/issues/64946Tavian Barnes2023-08-231-0/+3
|
* tests: Add missing .out fileTavian Barnes2023-08-141-0/+0
|
* parse: Allow -files0-from an empty set of pathsTavian Barnes2023-08-141-1/+1
| | | | This follows a behaviour change in GNU findutils 4.9.0.
* color: Only highlight the trailing slash on ENOTDIRTavian Barnes2023-07-132-5/+5
|
* color: Don't break up leading and trailing dirsTavian Barnes2023-07-1339-61/+63
|
* color: TTY-escape filenamesTavian Barnes2023-07-1340-0/+78
|
* color: Get rid of EXT_MAXTavian Barnes2023-07-132-0/+23
|
* parse: Reject -j0Tavian Barnes2023-07-121-0/+1
|
* tests/bfs: Add tests for -jTavian Barnes2023-07-125-0/+41
|
* color: Compare values too when deciding to smart-caseTavian Barnes2023-06-302-2/+7
|
* color: Implement smart casingTavian Barnes2023-06-295-10/+12
| | | | | | | | | Since coreutils 9.2, ls does case-sensitive extension matching if the same extension is capitalized differently in $LS_COLORS. Implement the same logic. Link: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=33123 Link: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=9086
* tests/bfs/color: Add mixed-case extensionsTavian Barnes2023-06-2940-118/+315
|
* tests: Get more tests passing with --bfs=tests/find-color.shTavian Barnes2023-06-271-5/+32
|
* tests/gnu/printf_times: Correct %T@ to %A@Tavian Barnes2023-06-221-1/+1
|
* alloc: Implement an arena for flexible structsTavian Barnes2023-06-201-1/+13
|
* alloc: New header for memory allocation utilitiesTavian Barnes2023-06-202-11/+26
|
* color: `fi=0` should not fall back to `no`Tavian Barnes2023-06-088-0/+84
|
* tests/bfstd: Use bfs_verify() over explicit abort()Tavian Barnes2023-05-191-14/+5
|
* Switch from assert() to bfs_assert()/bfs_verify()Tavian Barnes2023-05-183-86/+83
|
* bit: Rename int.h to bit.hTavian Barnes2023-05-181-1/+1
|
* config: Align after saturating in flex_sizeof()Tavian Barnes2023-05-161-1/+2
| | | | | This ensures that it's legal to call aligned_alloc() with the result, which requires a multiple of the alignment.
* int: Backport C23's bit utilitiesTavian Barnes2023-05-161-0/+57
|
* int: Backport C23's endian utilitiesTavian Barnes2023-05-161-0/+10
|
* int: Backport C23's _WIDTH macrosTavian Barnes2023-05-161-0/+54
|
* config: Saturate on overflow in flex_sizeof()Tavian Barnes2023-05-111-0/+1
|
* config: Properly align flex_sizeof()Tavian Barnes2023-05-111-0/+13
|
* config: Provide <stdalign.h> and <stdbool.h>Tavian Barnes2023-05-112-2/+2
| | | | In anticipation of C23, since those headers won't be necessary any more.
* config: s/BFS_COUNTOF/countof/Tavian Barnes2023-05-101-1/+1
|
* build: Fix tsanTavian Barnes2023-04-121-5/+6
|
* list: Use macros instead of type-erased listsTavian Barnes2023-03-311-0/+2
|
* trie: Use list.h for the list of leavesTavian Barnes2023-03-291-2/+0
|
* tests: Use close() wrappersTavian Barnes2023-01-312-5/+3
|
* Replace license boilerplate with SPDX tagsTavian Barnes2023-01-258-120/+16
| | | | | | | And while I'm at it, remove years from copyright declarations. Link: https://spdx.dev/about/ Link: https://daniel.haxx.se/blog/2023/01/08/copyright-without-years/
* mtab: Mitigate the race between bfs_mtab_parse() and bfs_mtab_fill_types()Tavian Barnes2023-01-222-0/+12
| | | | Fixes #97.
* tests/xtouch: Fix macOS buildTavian Barnes2023-01-191-0/+1
|
* bfstd: New wrappers for dirname()/basename()Tavian Barnes2023-01-193-15/+65
|
* tests: Use bfs_sudo wrapper instead of testing $SUDOTavian Barnes2022-12-2913-51/+49
|
* tests/bfs/printf_everything: Simplify double negationTavian Barnes2022-12-161-2/+2
|
* tests: New test for -fstype on a stacked mount pointTavian Barnes2022-12-162-0/+14
|
* tests: Save test stderr to separate filesTavian Barnes2022-12-161-2/+2
|
* tests: Fail early in bfs_diff if the diff failsTavian Barnes2022-12-1610-19/+12
| | | | Otherwise, propagate the exit code from bfs
* tests: Print the skip reason for --verbose=skippedTavian Barnes2022-12-162-8/+10
|
* tests: Turn on set -eTavian Barnes2022-12-1626-98/+69
|
* tests: Move crash detection into invoke_bfs, use ! instead of failTavian Barnes2022-12-1667-78/+72
|
* tests: Replace skip_unless test with test || skipTavian Barnes2022-12-1644-78/+67
|
* tests: Fix crash when stderr is redirectedTavian Barnes2022-12-141-1/+7
| | | | | | | | | | | | | bash uses fileno(stderr) to keep track of $COLUMNS. With stderr redirected, $COLUMNS will be unset, leading to $ ./tests/tests.sh 2> >(cat) ./tests/tests.sh: line 635: COLUMNS: unbound variable Fix it by using $(tput cols) if $COLUMNS is unset, which is almost POSIX. Link: https://www.austingroupbugs.net/view.php?id=1053
* tests/posix/readdir_error: Fix flakinessTavian Barnes2022-12-141-7/+23
|
* tests: Add a test for readdir() errorsTavian Barnes2022-12-131-0/+21
|