Hi Sergey,

> Does it mean that the bug can be reproduced on non-debug build(not an 
> assertion, but functional issue related to the  WS_MAXIMIZE style)? Can it be 
> checked by the test?

1.  The issue occurs in release mode. An incorrect style is set to Frame, but 
cannot be tested.
---  Issue is that, The code in question should set WS_MAXIMIZE bit to 0 in 
window's style but in this error case, WS_MAXIMIZE bit is set to 1.

Why it cannot be tested:
2.  Frame.getExtendedState()  always returns correct state saved in 
Frame.java::int state, set using setExtendedState().

3.  On native side the windows' style is accessed using GetStyle(), This style 
is not accessed or saved on java side.

4.  When the Frame.MAXIMIZED_BOTH extended state is set while the window is not 
visible, the state is saved,
---  on java side in Frame.java::state variable and
---  on native side in awtFrame::m_zoomed variable.
---  But it is not actually applied to the window, i.e. WS_MAXIMIZE bit would 
be 0 and we do not access the style.

5.  A java.awt.event.WindowStateListener added to frame, does not receive any  
WINDOW_STATE_CHANGED  event when a state is changed while window is not visible 
on screen.
---  The state may not be applied when window is not visible and there is no 
guarantee of receiving any event when the window becomes visible and the state 
gets applied.

Regards,
Ambarish

-----Original Message-----
From: Sergey Bylokhov 
Sent: Wednesday, November 07, 2018 2:41 AM
To: Ambarish Rapte <ambarish.ra...@oracle.com>; awt-dev@openjdk.java.net
Subject: Re: <AWT Dev> [12] RFR : JDK-8198002 : java/awt/Mixing/Validating.java 
debug assert on Windows

Hi, Ambarish.

On 06/11/2018 02:36, Ambarish Rapte wrote:
>  3. When MAXIMIZED_BOTH extended state is set before window is shown, it does 
> not reflect in to the window style, i.e. WS_MAXIMIZE style bit won't be set.
>  4. WS_MAXIMIZE is set only after the window is shown, i.e.  after 
> ShowWindow() call

Does it mean that the bug can be reproduced on non-debug build(not an 
assertion, but functional issue related to the  WS_MAXIMIZE style)? Can it be 
checked by the test?


-- 
Best regards, Sergey.

Reply via email to