Fix allocator bug

This commit is contained in:
Vitaliy Filippov
2019-11-27 01:12:25 +03:00
parent ff7469ee91
commit 6ac1d5db08
3 changed files with 22 additions and 2 deletions
+2 -2
View File
@@ -57,7 +57,7 @@ void allocator::set(uint64_t addr, bool value)
{
if (value)
{
mask[last] = mask[last] | (1 << bit);
mask[last] = mask[last] | (1l << bit);
if (mask[last] != (!is_last || cur_addr/64 < size/64
? UINT64_MAX : last_one_mask))
{
@@ -66,7 +66,7 @@ void allocator::set(uint64_t addr, bool value)
}
else
{
mask[last] = mask[last] & ~(1 << bit);
mask[last] = mask[last] & ~(1l << bit);
if (mask[last] != 0)
{
break;