Make improvements

- Polyfill readlink("foo/") dir check on Windows
- Support asynchronous signal delivery on Windows
- Restore Windows Console from execve() daisy chain
- Work around bug in AARCH64 Optimized Routines memcmp()
- Disable unbourne.com shell completion on Windows for now
- Don't always set virtual terminal input state on console
- Remove Musl Libc's unusual preservation of realpath("//")
- Make realpath() strongly link malloc() to pass configure test
- Delete cosh.com shell, now that unbourne.com works on Windows!
This commit is contained in:
Justine Tunney 2023-09-06 22:39:36 -07:00
parent f9c9a323fe
commit 425c055116
No known key found for this signature in database
GPG key ID: BE714B4575D6E328
40 changed files with 581 additions and 706 deletions

View file

@ -47,6 +47,8 @@ TEST(readlink, enoent) {
TEST(readlink, enotdir) {
char buf[32];
ASSERT_SYS(0, 0, touch("o", 0644));
ASSERT_SYS(ENOTDIR, -1, readlink("o/", buf, 32));
ASSERT_SYS(ENOTDIR, -1, readlink("o/o/..", buf, 32));
ASSERT_SYS(ENOTDIR, -1, readlink("o/doesnotexist", buf, 32));
}
@ -95,7 +97,7 @@ TEST(readlinkat, frootloop) {
}
}
TEST(readlinkat, statReadsNameLength) {
TEST(readlinkat, statReadsNameLength_countsUtf8Bytes) {
struct stat st;
ASSERT_SYS(0, 0, symlink("froÒt", "froÒt"));
ASSERT_SYS(0, 0, fstatat(AT_FDCWD, "froÒt", &st, AT_SYMLINK_NOFOLLOW));