1
0
mirror of https://github.com/OpenTTD/OpenTTD.git synced 2025-08-24 06:59:10 +00:00

Fix: [ICU] crash when trying to break a non-breaking run (#10791)

Clusters from harfbuzz are indexed from the start of the buffer,
not from the start of the run analyzed. This confuses other parts
of the code that do assume they are from the start of the run.
This commit is contained in:
Patric Stout
2023-05-08 18:09:47 +02:00
committed by GitHub
parent bc6a4b1d08
commit aed36a609c

View File

@@ -208,7 +208,7 @@ void ICURun::Shape(UChar *buff, size_t buff_length) {
x_advance = glyph_pos[i].x_advance / FONT_SCALE;
}
this->glyph_to_char.push_back(glyph_info[i].cluster);
this->glyph_to_char.push_back(glyph_info[i].cluster - this->start);
this->advance.push_back(x_advance);
advance += x_advance;
}