--- old/modules/javafx.swing/src/main/java/javafx/embed/swing/SwingFXUtils.java 2018-05-05 14:08:54.261461300 +0530 +++ new/modules/javafx.swing/src/main/java/javafx/embed/swing/SwingFXUtils.java 2018-05-05 14:08:53.512660000 +0530 @@ -41,7 +41,8 @@ import javafx.scene.paint.Color; import com.sun.javafx.tk.Toolkit; import javax.swing.SwingUtilities; -import sun.awt.image.IntegerComponentRaster; + +import jdk.swing.interop.SwingInterOpUtils; /** * This class provides utility methods for converting data types between @@ -111,10 +112,10 @@ wimg = new WritableImage(bw, bh); } PixelWriter pw = wimg.getPixelWriter(); - IntegerComponentRaster icr = (IntegerComponentRaster) bimg.getRaster(); - int data[] = icr.getDataStorage(); - int offset = icr.getDataOffset(0); - int scan = icr.getScanlineStride(); + int data[] = SwingInterOpUtils.getData(bimg); + int offset = SwingInterOpUtils.getOffset(bimg); + int scan = SwingInterOpUtils.getScanlineStride(bimg); + PixelFormat pf = (bimg.isAlphaPremultiplied() ? PixelFormat.getIntArgbPreInstance() : PixelFormat.getIntArgbInstance()); @@ -281,10 +282,10 @@ if (bimg == null) { bimg = new BufferedImage(iw, ih, prefBimgType); } - IntegerComponentRaster icr = (IntegerComponentRaster) bimg.getRaster(); - int offset = icr.getDataOffset(0); - int scan = icr.getScanlineStride(); - int data[] = icr.getDataStorage(); + int offset = SwingInterOpUtils.getOffset(bimg); + int scan = SwingInterOpUtils.getScanlineStride(bimg); + int data[] = SwingInterOpUtils.getData(bimg); + WritablePixelFormat pf = getAssociatedPixelFormat(bimg); pr.getPixels(0, 0, iw, ih, pf, data, offset, scan); return bimg;