From fa5248c9db8c661b898ff4e9e03433128b2534c4 Mon Sep 17 00:00:00 2001 From: Phil Race Date: Wed, 24 Dec 2008 09:53:52 -0800 Subject: [PATCH] 6728838: Native memory leak in StrikeCache.java Reviewed-by: bae, igor --- jdk/src/share/classes/sun/font/StrikeCache.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/jdk/src/share/classes/sun/font/StrikeCache.java b/jdk/src/share/classes/sun/font/StrikeCache.java index 560be3af2cd..56539e7489f 100644 --- a/jdk/src/share/classes/sun/font/StrikeCache.java +++ b/jdk/src/share/classes/sun/font/StrikeCache.java @@ -232,6 +232,16 @@ public final class StrikeCache { if (disposer.pScalerContext != 0L) { freeLongMemory(new long[0], disposer.pScalerContext); } + } 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); + } } }