mirror of
https://github.com/harfbuzz/harfbuzz.git
synced 2025-04-13 08:42:59 +00:00
[bit-set] Sprinkle a few .arrayZ around
All accesses are valid.
This commit is contained in:
parent
7862c7c5e1
commit
a617328005
1 changed files with 17 additions and 17 deletions
|
@ -297,9 +297,9 @@ struct hb_bit_set_t
|
|||
unsigned int write_index = 0;
|
||||
for (unsigned int i = 0; i < page_map.length; i++)
|
||||
{
|
||||
int m = (int) page_map[i].major;
|
||||
int m = (int) page_map.arrayZ[i].major;
|
||||
if (m < ds || de < m)
|
||||
page_map[write_index++] = page_map[i];
|
||||
page_map.arrayZ[write_index++] = page_map.arrayZ[i];
|
||||
}
|
||||
compact (compact_workspace, write_index);
|
||||
resize (write_index);
|
||||
|
@ -389,7 +389,7 @@ struct hb_bit_set_t
|
|||
{
|
||||
if (page_at (a).is_empty ()) { a++; continue; }
|
||||
if (other.page_at (b).is_empty ()) { b++; continue; }
|
||||
if (page_map[a].major != other.page_map[b].major ||
|
||||
if (page_map.arrayZ[a].major != other.page_map.arrayZ[b].major ||
|
||||
!page_at (a).is_equal (other.page_at (b)))
|
||||
return false;
|
||||
a++;
|
||||
|
@ -412,8 +412,8 @@ struct hb_bit_set_t
|
|||
uint32_t spi = 0;
|
||||
for (uint32_t lpi = 0; spi < page_map.length && lpi < larger_set.page_map.length; lpi++)
|
||||
{
|
||||
uint32_t spm = page_map[spi].major;
|
||||
uint32_t lpm = larger_set.page_map[lpi].major;
|
||||
uint32_t spm = page_map.arrayZ[spi].major;
|
||||
uint32_t lpm = larger_set.page_map.arrayZ[lpi].major;
|
||||
auto sp = page_at (spi);
|
||||
|
||||
if (spm < lpm && !sp.is_empty ())
|
||||
|
@ -503,7 +503,7 @@ struct hb_bit_set_t
|
|||
|
||||
for (; a < na && b < nb; )
|
||||
{
|
||||
if (page_map[a].major == other.page_map[b].major)
|
||||
if (page_map.arrayZ[a].major == other.page_map.arrayZ[b].major)
|
||||
{
|
||||
if (!passthru_left)
|
||||
{
|
||||
|
@ -512,7 +512,7 @@ struct hb_bit_set_t
|
|||
// passthru_left is set since no left side pages will be removed
|
||||
// in that case.
|
||||
if (write_index < a)
|
||||
page_map[write_index] = page_map[a];
|
||||
page_map.arrayZ[write_index] = page_map.arrayZ[a];
|
||||
write_index++;
|
||||
}
|
||||
|
||||
|
@ -520,7 +520,7 @@ struct hb_bit_set_t
|
|||
a++;
|
||||
b++;
|
||||
}
|
||||
else if (page_map[a].major < other.page_map[b].major)
|
||||
else if (page_map.arrayZ[a].major < other.page_map.arrayZ[b].major)
|
||||
{
|
||||
if (passthru_left)
|
||||
count++;
|
||||
|
@ -765,8 +765,8 @@ struct hb_bit_set_t
|
|||
unsigned int initial_size = size;
|
||||
for (unsigned int i = start_page; i < page_map.length && size; i++)
|
||||
{
|
||||
uint32_t base = major_start (page_map[i].major);
|
||||
unsigned int n = pages[page_map[i].index].write (base, start_page_value, out, size);
|
||||
uint32_t base = major_start (page_map.arrayZ[i].major);
|
||||
unsigned int n = pages[page_map.arrayZ[i].index].write (base, start_page_value, out, size);
|
||||
out += n;
|
||||
size -= n;
|
||||
start_page_value = 0;
|
||||
|
@ -814,8 +814,8 @@ struct hb_bit_set_t
|
|||
hb_codepoint_t next_value = codepoint + 1;
|
||||
for (unsigned int i=start_page; i<page_map.length && size; i++)
|
||||
{
|
||||
uint32_t base = major_start (page_map[i].major);
|
||||
unsigned int n = pages[page_map[i].index].write_inverted (base, start_page_value, out, size, &next_value);
|
||||
uint32_t base = major_start (page_map.arrayZ[i].major);
|
||||
unsigned int n = pages[page_map.arrayZ[i].index].write_inverted (base, start_page_value, out, size, &next_value);
|
||||
out += n;
|
||||
size -= n;
|
||||
start_page_value = 0;
|
||||
|
@ -846,8 +846,8 @@ struct hb_bit_set_t
|
|||
unsigned count = pages.length;
|
||||
for (unsigned i = 0; i < count; i++)
|
||||
{
|
||||
const auto& map = page_map[i];
|
||||
const auto& page = pages[map.index];
|
||||
const auto& map = page_map.arrayZ[i];
|
||||
const auto& page = pages.arrayZ[map.index];
|
||||
|
||||
if (!page.is_empty ())
|
||||
return map.major * page_t::PAGE_BITS + page.get_min ();
|
||||
|
@ -859,8 +859,8 @@ struct hb_bit_set_t
|
|||
unsigned count = pages.length;
|
||||
for (signed i = count - 1; i >= 0; i--)
|
||||
{
|
||||
const auto& map = page_map[(unsigned) i];
|
||||
const auto& page = pages[map.index];
|
||||
const auto& map = page_map.arrayZ[(unsigned) i];
|
||||
const auto& page = pages.arrayZ[map.index];
|
||||
|
||||
if (!page.is_empty ())
|
||||
return map.major * page_t::PAGE_BITS + page.get_max ();
|
||||
|
@ -961,7 +961,7 @@ struct hb_bit_set_t
|
|||
return nullptr;
|
||||
|
||||
last_page_lookup = i;
|
||||
return &pages.arrayZ[page_map[i].index];
|
||||
return &pages.arrayZ[page_map.arrayZ[i].index];
|
||||
}
|
||||
page_t &page_at (unsigned int i)
|
||||
{
|
||||
|
|
Loading…
Add table
Reference in a new issue