diff -r 36b30720a997 -r 91e99bed64ae jdk/src/share/native/sun/font/layout/ThaiLayoutEngine.cpp --- a/jdk/src/share/native/sun/font/layout/ThaiLayoutEngine.cpp Tue Feb 26 10:07:26 2013 -0800 +++ b/jdk/src/share/native/sun/font/layout/ThaiLayoutEngine.cpp Thu Mar 07 10:02:20 2013 -0800 @@ -134,11 +134,10 @@ return; } - if (fTypoFlags & 0x1) { /* kerning enabled */ - static const le_uint32 kernTableTag = LE_KERN_TABLE_TAG; - - KernTable kt(fFontInstance, getFontTable(kernTableTag)); - kt.process(glyphStorage); + if (fTypoFlags & LE_Kerning_FEATURE_FLAG) { /* kerning enabled */ + LETableReference kernTable(fFontInstance, LE_KERN_TABLE_TAG, success); + KernTable kt(kernTable, success); + kt.process(glyphStorage, success); } // default is no adjustments