src/share/classes/sun/font/StrikeCache.java

Print this page
rev 1297 : [mq]: fontmanager.patch

*** 235,252 **** } else if (disposer.pScalerContext != 0L) { /* Rarely a strike may have been created that never cached * any glyphs. In this case we still want to free the scaler * context. */ ! if (FontManager.longAddresses) { freeLongMemory(new long[0], disposer.pScalerContext); } else { freeIntMemory(new int[0], disposer.pScalerContext); } } } static void disposeStrike(final FontStrikeDisposer disposer) { // we need to execute the strike disposal on the rendering thread // because they may be accessed on that thread at the time of the // disposal (for example, when the accel. cache is invalidated) --- 235,256 ---- } else if (disposer.pScalerContext != 0L) { /* Rarely a strike may have been created that never cached * any glyphs. In this case we still want to free the scaler * context. */ ! if (longAddresses()) { freeLongMemory(new long[0], disposer.pScalerContext); } else { freeIntMemory(new int[0], disposer.pScalerContext); } } } + private static boolean longAddresses() { + return nativeAddressSize == 8; + } + static void disposeStrike(final FontStrikeDisposer disposer) { // we need to execute the strike disposal on the rendering thread // because they may be accessed on that thread at the time of the // disposal (for example, when the accel. cache is invalidated)