You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
RTL text containing two different script types could sometimes lead to HarfBuzz returning non-monotonic cluster IDs, which could cause an assertion in the code that tries to count the number of graphemes and characters in each glyph. This assertion can be prevented by moving the logic for performing that calculation to after each sub-section, as then the calculation is always bound to the correct character ranges from the source buffer. Additionally this change prevents a transient FString being constructed by FSlateTextShaper::PerformHarfBuzzTextShaping each time it called HarfBuzzUtils::AppendStringToBuffer, as the shaper is working with a const TCHAR* rather than an FString (HarfBuzzUtils::AppendStringToBuffer now uses FStringView instead). #jira UE-91619 [FYI] Matt.Kuhlenschmidt #rb none #ROBOMERGE-SOURCE: CL 12875935 in //UE4/Release-4.25/... via CL 12875938 via CL 12875940 #ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v681-12776863) [CL 12875943 by jamie dale in Main branch]