--- old/src/java.desktop/unix/classes/sun/awt/X11/XToolkit.java 2019-05-06 14:44:25.421071250 -0700 +++ new/src/java.desktop/unix/classes/sun/awt/X11/XToolkit.java 2019-05-06 14:44:25.285071252 -0700 @@ -346,10 +346,14 @@ arrowCursor = XlibWrapper.XCreateFontCursor(XToolkit.getDisplay(), XCursorFontConstants.XC_arrow); - areExtraMouseButtonsEnabled = Boolean.parseBoolean(System.getProperty("sun.awt.enableExtraMouseButtons", "true")); - //set system property if not yet assigned - System.setProperty("sun.awt.enableExtraMouseButtons", ""+areExtraMouseButtonsEnabled); - + final String extraButtons = "sun.awt.enableExtraMouseButtons"; + AccessController.doPrivileged((PrivilegedAction) () -> { + areExtraMouseButtonsEnabled = + Boolean.parseBoolean(System.getProperty(extraButtons, "true")); + //set system property if not yet assigned + System.setProperty(extraButtons, ""+areExtraMouseButtonsEnabled); + return null; + }); // Detect display mode changes XlibWrapper.XSelectInput(XToolkit.getDisplay(), XToolkit.getDefaultRootWindow(), XConstants.StructureNotifyMask); XToolkit.addEventDispatcher(XToolkit.getDefaultRootWindow(), new XEventDispatcher() {