--- old/src/java.desktop/windows/classes/sun/awt/windows/TranslucentWindowPainter.java 2016-08-12 14:00:16.132280000 +0530 +++ new/src/java.desktop/windows/classes/sun/awt/windows/TranslucentWindowPainter.java 2016-08-12 14:00:15.900164000 +0530 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2008, 2014, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2008, 2016, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -30,6 +30,7 @@ import java.awt.GraphicsConfiguration; import java.awt.Image; import java.awt.Window; +import java.awt.geom.AffineTransform; import java.awt.image.BufferedImage; import java.awt.image.DataBufferInt; import java.awt.image.VolatileImage; @@ -45,6 +46,7 @@ import sun.security.action.GetPropertyAction; import static java.awt.image.VolatileImage.*; +import sun.java2d.pipe.Region; import static sun.java2d.pipe.hw.AccelSurface.*; import static sun.java2d.pipe.hw.ContextCapabilities.*; @@ -303,8 +305,12 @@ if (bb instanceof DestSurfaceProvider) { Surface s = ((DestSurfaceProvider)bb).getDestSurface(); if (s instanceof AccelSurface) { - final int w = bb.getWidth(null); - final int h = bb.getHeight(null); + AffineTransform tx = ((Graphics2D) bb.getGraphics()). + getTransform(); + final int w = Region. + clipScale(bb.getWidth(null), tx.getScaleX()); + final int h = Region. + clipScale(bb.getHeight(null), tx.getScaleY()); final boolean arr[] = { false }; final AccelSurface as = (AccelSurface)s; RenderQueue rq = as.getContext().getRenderQueue();