--- old/src/share/classes/sun/font/SunLayoutEngine.java 2018-09-03 10:16:35.000000000 +0100 +++ new/src/share/classes/sun/font/SunLayoutEngine.java 2018-09-03 10:16:34.000000000 +0100 @@ -155,6 +155,11 @@ Font2D font = key.font(); FontStrike strike = font.getStrike(desc); long layoutTables = font.getLayoutTableCache(); + if (font instanceof CFont && (typo_flags & 0x80000000) != 0) { + // Ignore layout tables for RTL AAT fonts + // due to lack of support in ICU + layoutTables = 0; + } nativeLayout(font, strike, mat, gmask, baseIndex, tr.text, tr.start, tr.limit, tr.min, tr.max, key.script(), key.lang(), typo_flags, pt, data,