* id: Handle NULL pointer gracefully within `cstr2cow` macro
> getlogin() returns a pointer to a string containing the name of the user logged in on the controlling terminal of the process, or a NULL pointer if this information cannot be determined.
Ref: https://linux.die.net/man/3/getlogin
* id: Remove redundant std::ffi:: prefix from CStr
* id: Add comment for the null check
Co-authored-by: Sylvestre Ledru <sylvestre@debian.org>
* id: Remove skip for test that should not segfault anymore
Segfault fixed by 292fb9242342d47412a789f4d0002b811568bd41
---------
Co-authored-by: Sylvestre Ledru <sylvestre@debian.org>
A lot of custom logic, we basically do arithmetic on character
arrays, but this comes at with huge performance gains.
Unlike coreutils `seq`, we do this for all positive increments
(because why not), and we do not fall back to slow path if
the last parameter is in scientific notation.
Also, add some tests for empty separator, as that may catch
some corner cases.
* friendly message install file to directory containing directory with same name
* install: test install file to directory containing directory with same name
Fix a bug in `mv` where it would hang indefinitely while trying to copy
a FIFO across filesystems. The solution is to remove the old FIFO and
create a new one on the new filesystem.
Fixes#7076
Fixes issue #7666
For `od` utility, if client specifies `-N` maximum bytes to be read
then ensure stdin is left pointing to the next byte when `od` exits.
To do this...
- Bypass standard buffering on stdin.
- Instantiate BufReader further up the stack to maintain performance.
* add -T option parsing
* add usage of tab_size in display_grid
* fix test_ls_columns with \t
since this behavior is on by default
* update test_tabsize_formatting
* use grid DEFAULT_SEPARATOR_SIZE
* update Tabs
* fix test with column width
* fix cspell
* fix linter warning on match bool
* add comment for 0 tab_size
* update tabsize test with -C
* update one of the tabs tests to use -x
* remove comment and split tests for both x/C args
uucore: parser: num_parser: Return error if no digit has been parsed
uucore: parser: num_parser: Ignore empty exponents
uucore: parser: num_parser: Parse "0x"/"0b" as PartialMatch