--- old/src/java.desktop/share/classes/sun/java2d/marlin/RendererContext.java 2017-04-22 13:16:07.468558522 +0200 +++ new/src/java.desktop/share/classes/sun/java2d/marlin/RendererContext.java 2017-04-22 13:16:07.272556765 +0200 @@ -35,7 +35,7 @@ /** * This class is a renderer context dedicated to a single thread */ -final class RendererContext extends ReentrantContext implements MarlinConst { +final class RendererContext extends ReentrantContext implements IRendererContext { // RendererContext creation counter private static final AtomicInteger CTX_COUNT = new AtomicInteger(1); @@ -121,7 +121,7 @@ // Renderer: cache = new MarlinCache(this); renderer = new Renderer(this); // needs MarlinCache from rdrCtx.cache - ptg = new MarlinTileGenerator(renderer); + ptg = new MarlinTileGenerator(stats, renderer, cache); stroker = new Stroker(this); dasher = new Dasher(this); @@ -174,14 +174,21 @@ return p2d; } - OffHeapArray newOffHeapArray(final long initialSize) { + @Override + public RendererStats stats() { + return stats; + } + + @Override + public OffHeapArray newOffHeapArray(final long initialSize) { if (DO_STATS) { stats.totalOffHeapInitial += initialSize; } return new OffHeapArray(cleanerObj, initialSize); } - IntArrayCache.Reference newCleanIntArrayRef(final int initialSize) { + @Override + public IntArrayCache.Reference newCleanIntArrayRef(final int initialSize) { return cleanIntCache.createRef(initialSize); }