Fix test for MinGW.
This commit is contained in:
parent
6ed18cb348
commit
828d919b5e
@ -126,6 +126,7 @@ TEST_BEGIN(test_chunk)
|
|||||||
chunk_split,
|
chunk_split,
|
||||||
chunk_merge
|
chunk_merge
|
||||||
};
|
};
|
||||||
|
bool xallocx_success_a, xallocx_success_b, xallocx_success_c;
|
||||||
|
|
||||||
/* Install custom chunk hooks. */
|
/* Install custom chunk hooks. */
|
||||||
old_size = sizeof(chunk_hooks_t);
|
old_size = sizeof(chunk_hooks_t);
|
||||||
@ -167,13 +168,16 @@ TEST_BEGIN(test_chunk)
|
|||||||
did_dalloc = false;
|
did_dalloc = false;
|
||||||
did_decommit = false;
|
did_decommit = false;
|
||||||
did_purge = false;
|
did_purge = false;
|
||||||
assert_zu_eq(xallocx(p, huge0, 0, 0), huge0,
|
did_split = false;
|
||||||
"Unexpected xallocx() failure");
|
xallocx_success_a = (xallocx(p, huge0, 0, 0) == huge0);
|
||||||
assert_d_eq(mallctl("arena.0.purge", NULL, NULL, NULL, 0), 0,
|
assert_d_eq(mallctl("arena.0.purge", NULL, NULL, NULL, 0), 0,
|
||||||
"Unexpected arena.0.purge error");
|
"Unexpected arena.0.purge error");
|
||||||
assert_true(did_dalloc, "Expected dalloc");
|
if (xallocx_success_a) {
|
||||||
assert_false(did_decommit, "Unexpected decommit");
|
assert_true(did_dalloc, "Expected dalloc");
|
||||||
assert_true(did_purge, "Expected purge");
|
assert_false(did_decommit, "Unexpected decommit");
|
||||||
|
assert_true(did_purge, "Expected purge");
|
||||||
|
}
|
||||||
|
assert_true(did_split, "Expected split");
|
||||||
dallocx(p, 0);
|
dallocx(p, 0);
|
||||||
do_dalloc = true;
|
do_dalloc = true;
|
||||||
|
|
||||||
@ -186,15 +190,15 @@ TEST_BEGIN(test_chunk)
|
|||||||
did_commit = false;
|
did_commit = false;
|
||||||
did_split = false;
|
did_split = false;
|
||||||
did_merge = false;
|
did_merge = false;
|
||||||
assert_zu_eq(xallocx(p, huge0, 0, 0), huge0,
|
xallocx_success_b = (xallocx(p, huge0, 0, 0) == huge0);
|
||||||
"Unexpected xallocx() failure");
|
|
||||||
assert_d_eq(mallctl("arena.0.purge", NULL, NULL, NULL, 0), 0,
|
assert_d_eq(mallctl("arena.0.purge", NULL, NULL, NULL, 0), 0,
|
||||||
"Unexpected arena.0.purge error");
|
"Unexpected arena.0.purge error");
|
||||||
assert_true(did_split, "Expected split");
|
if (xallocx_success_b)
|
||||||
assert_zu_eq(xallocx(p, huge0 * 2, 0, 0), huge0 * 2,
|
assert_true(did_split, "Expected split");
|
||||||
"Unexpected xallocx() failure");
|
xallocx_success_c = (xallocx(p, huge0 * 2, 0, 0) == huge0 * 2);
|
||||||
assert_b_eq(did_decommit, did_commit, "Expected decommit/commit match");
|
assert_b_eq(did_decommit, did_commit, "Expected decommit/commit match");
|
||||||
assert_true(did_merge, "Expected merge");
|
if (xallocx_success_b && xallocx_success_c)
|
||||||
|
assert_true(did_merge, "Expected merge");
|
||||||
dallocx(p, 0);
|
dallocx(p, 0);
|
||||||
do_dalloc = true;
|
do_dalloc = true;
|
||||||
do_decommit = false;
|
do_decommit = false;
|
||||||
|
Loading…
Reference in New Issue
Block a user