Fix boot loop issue on Android Wear.
The boot loop was seen after I65e220aca823fd815a52437b11c8e6dc952de8e2 but only on Android Wear. On Android Wear, some font files are missing but are listed in fonts.xml. Before that patch, we created a Typeface object with an empty FontFamily even if there was no valid font entry in font-family tag. However, after that patch, FontFamily stopped creating native objects and holds a null pointer instead. As the result, SIGSEGV happens. The right fix is skipping Typeface creation if native code failed to create the font family object. Since Typeface.init cannot be called twice, this is hard to test automatically. Bug: 37328609 Bug: 37326002 Test: Boot succeeded even after removing CutiveMono.ttf from system. Change-Id: I125de07343252784986d728c3bbaa46b24ace601
Loading
Please register or sign in to comment