Minecraft crashes when trying to render supplementary character (UTF-16) in right to left language
The bug
All my players use Minecraft in Hebrew interface.
If we copy emoji (for example form this site: http://getemoji.com/) and paste it in the Minecraft chat the game will crash for several players in the server.
If you named something (a minecraft:book for example) with the emoji you copied, anyone that look at that something it will crash his game.
Description: Rendering screen java.lang.ExceptionInInitializerError at com.ibm.icu.text.UTF16.charAt(UTF16.java:401) at com.ibm.icu.text.Bidi.getDirProps(Bidi.java:1675) at com.ibm.icu.text.Bidi.setPara(Bidi.java:3294) at com.ibm.icu.text.Bidi.<init>(Bidi.java:4631) at com.ibm.icu.text.Bidi.<init>(Bidi.java:4518) at bfg.c(SourceFile:280) at bfg.b(SourceFile:439) at bfg.a(SourceFile:269) at bfg.a(SourceFile:255) at bfq.g(SourceFile:402) at bgr.a(SourceFile:166) at bqe.a(SourceFile:1078) at bes.av(SourceFile:993) at bes.a(SourceFile:398) at net.minecraft.client.main.Main.main(SourceFile:124) Caused by: java.util.MissingResourceException: could not locate data data/icudt51b/uprops.icu at com.ibm.icu.impl.ICUData.getStream(ICUData.java:56) at com.ibm.icu.impl.ICUData.getRequiredStream(ICUData.java:97) at com.ibm.icu.impl.UCharacterProperty.<init>(UCharacterProperty.java:1187) at com.ibm.icu.impl.UCharacterProperty.<clinit>(UCharacterProperty.java:1411) ... 15 more
How to reproduce
- Set the language to one which is read and written right to left, for example Hebrew
- Paste any supplementary character (UTF-16) like 𐀀 (U+10000) in any text field for example the chat
2017-01-02, 01:28 PM
2021-03-12, 04:05 PM
2018-10-03, 03:18 PM
2
4
crash, language, rendering, right-to-left, text, unicode, utf-16
Minecraft 1.11.2, Minecraft 1.12.2
-