mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-02-26 07:49:05 +00:00
Release Cosmopolitan v3.5.6
This commit is contained in:
parent
2018cac11f
commit
3374cbba73
4 changed files with 6 additions and 7 deletions
|
@ -4,7 +4,7 @@
|
||||||
|
|
||||||
#define __COSMOPOLITAN_MAJOR__ 3
|
#define __COSMOPOLITAN_MAJOR__ 3
|
||||||
#define __COSMOPOLITAN_MINOR__ 5
|
#define __COSMOPOLITAN_MINOR__ 5
|
||||||
#define __COSMOPOLITAN_PATCH__ 5
|
#define __COSMOPOLITAN_PATCH__ 6
|
||||||
#define __COSMOPOLITAN__ \
|
#define __COSMOPOLITAN__ \
|
||||||
(100000000 * __COSMOPOLITAN_MAJOR__ + 1000000 * __COSMOPOLITAN_MINOR__ + \
|
(100000000 * __COSMOPOLITAN_MAJOR__ + 1000000 * __COSMOPOLITAN_MINOR__ + \
|
||||||
__COSMOPOLITAN_PATCH__)
|
__COSMOPOLITAN_PATCH__)
|
||||||
|
|
|
@ -146,9 +146,7 @@ static int __muntrack(char *addr, size_t size, int pagesz,
|
||||||
__maps.count -= 1;
|
__maps.count -= 1;
|
||||||
__maps_check();
|
__maps_check();
|
||||||
} else if (IsWindows()) {
|
} else if (IsWindows()) {
|
||||||
// you can't carve up memory maps on windows. our mmap() makes
|
// you can't carve up memory maps on windows ;_;
|
||||||
// this not a problem (for non-enormous memory maps) by making
|
|
||||||
// independent mappings for each 64 kb granule, under the hood
|
|
||||||
rc = einval();
|
rc = einval();
|
||||||
} else if (addr <= map_addr) {
|
} else if (addr <= map_addr) {
|
||||||
// shave off lefthand side of mapping
|
// shave off lefthand side of mapping
|
||||||
|
|
|
@ -32,9 +32,8 @@ TEST(sigaltstack, badFlag) {
|
||||||
|
|
||||||
TEST(sigaltstack, disable) {
|
TEST(sigaltstack, disable) {
|
||||||
struct sigaltstack ss;
|
struct sigaltstack ss;
|
||||||
|
EXPECT_SYS(0, 0, sigaltstack(0, &ss));
|
||||||
ss.ss_flags = SS_DISABLE;
|
ss.ss_flags = SS_DISABLE;
|
||||||
ss.ss_size = 0;
|
|
||||||
ss.ss_sp = 0;
|
|
||||||
EXPECT_SYS(0, 0, sigaltstack(&ss, 0));
|
EXPECT_SYS(0, 0, sigaltstack(&ss, 0));
|
||||||
EXPECT_SYS(0, 0, sigaltstack(0, &ss));
|
EXPECT_SYS(0, 0, sigaltstack(0, &ss));
|
||||||
EXPECT_EQ(SS_DISABLE, ss.ss_flags);
|
EXPECT_EQ(SS_DISABLE, ss.ss_flags);
|
||||||
|
|
|
@ -183,7 +183,9 @@ TEST(munmap, tinyFile_preciseUnmapSize) {
|
||||||
|
|
||||||
// clang-format off
|
// clang-format off
|
||||||
TEST(munmap, tinyFile_mapThriceUnmapOnce) {
|
TEST(munmap, tinyFile_mapThriceUnmapOnce) {
|
||||||
char *p = __maps_randaddr();
|
char *p;
|
||||||
|
ASSERT_NE(MAP_FAILED, (p = mmap(0, gransz*4, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0)));
|
||||||
|
ASSERT_SYS(0, 0, munmap(p, gransz*4));
|
||||||
ASSERT_SYS(0, 3, open("doge", O_RDWR | O_CREAT | O_TRUNC, 0644));
|
ASSERT_SYS(0, 3, open("doge", O_RDWR | O_CREAT | O_TRUNC, 0644));
|
||||||
ASSERT_SYS (0, 5, write(3, "hello", 5));
|
ASSERT_SYS (0, 5, write(3, "hello", 5));
|
||||||
ASSERT_EQ(p+gransz*0, mmap(p+gransz*0, gransz, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_FIXED, -1, 0));
|
ASSERT_EQ(p+gransz*0, mmap(p+gransz*0, gransz, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_FIXED, -1, 0));
|
||||||
|
|
Loading…
Add table
Reference in a new issue