<AWT Dev> RFR: 8144074: [PIT] Crash calling Toolkit.getScreenSize() on Windows.
Sergey Bylokhov
Sergey.Bylokhov at oracle.com
Wed Nov 25 20:19:04 UTC 2015
Hi, Phil.
Is it possible that the code in the Devices::UpdateInstance assume that
some other initialization should be done before? For example the
initializations steps in the Win32GraphicsEnvironment.java:
// Ensure awt is loaded already. Also, this forces static init
// of WToolkit and Toolkit, which we depend upon
WToolkit.loadLibraries();
// setup flags before initializing native layer
WindowsFlags.initFlags();
initDisplayWrapper();
->>>> then in native
// This method needs to be called prior to any display-related activity
SetProcessDPIAwareProperty();
DWMIsCompositionEnabled();
initScreens(env);
->>>>
!Devices::UpdateInstance(env)
It seems that in your fix device will be initialized before
initFlags()/SetProcessDPIAwareProperty/DWMIsCompositionEnabled, right?
On 25.11.15 22:39, Phil Race wrote:
> This resolves a crash on WIndows startup due to changes in the hidpi
> support
> that requires the graphics devices be initialised first in order to get
> screen dimensions.
>
> http://cr.openjdk.java.net/~prr/8144074/
> https://bugs.openjdk.java.net/browse/JDK-8144074
>
> -phil.
--
Best regards, Sergey.
More information about the awt-dev
mailing list