On Mon, 5 Jun 2023 17:51:27 GMT, Phil Race <p...@openjdk.org> wrote: >> 8308875 is a regression after the recent [fix for >> 8305578](https://github.com/openjdk/jdk/commit/d7245f70) that effectively >> undid a part of [another, older, >> change](https://github.com/openjdk/jdk/commit/40f6d697d25293282e3d3ee695ef8cd9a5494799), >> the one made to fix [8233573](https://bugs.openjdk.org/browse/JDK-8233573). >> >> This commits brings that part back and passes the test >> `java/awt/Toolkit/GetScreenInsetsCustomGC/GetScreenInsetsCustomGC.java` on >> Linux, so the test is also removed from the ProblemList file. > > I note that the previous fix "undid" similar code on windows and mac as well. > Any explanation why it only causes a problem for Linux ?
@prrace > I note that the previous fix "undid" similar code on windows and mac as well. > Any explanation why it only causes a problem for Linux ? Now that I've looked at the code, I don't understand the statement "the previous fix "undid" similar code on windows and mac as well". If by "the previous fix" you mean the fix for 8305578, then it did *not* introduce the same problem on MacOS/Windows as it did for Linux. Compare the relevant parts of `getScreenInsets()` before this one has been integrated: Linux: final X11GraphicsDevice device = (X11GraphicsDevice) gc.getDevice(); Insets insets = device.getInsets(); MacOS: if (!(gd instanceof CGraphicsDevice)) { return super.getScreenInsets(gc); } Windows: if (!(gd instanceof Win32GraphicsDevice)) { return super.getScreenInsets(gc); } Only Linux will fail in case of a "custom" `GraphicsConfiguration`. ------------- PR Comment: https://git.openjdk.org/jdk/pull/14170#issuecomment-1597060568