On 9/21/17 08:57, Semyon Sadetsky wrote:
On 09/13/2017 03:42 PM, Sergey Bylokhov wrote:

On 9/13/17 15:36, Semyon Sadetsky wrote:
The problem in the fix is that the new checks do not try to be thread safe.
So, what do you propose? Add a volatile field "disposing" and do noop if it is true?

I have added a links to the bug which contain an examples, of how it was implemented in other cases.
I did not get which links do you mean. Can you be more specific about the solution you are proposing?

I added a links to two bugs in the comment, my proposal is to do something similar to a fixes for those bugs.





--Semyon


--Semyon


On 09/13/2017 11:55 AM, Sergey Bylokhov wrote:
On 9/13/17 11:49, Semyon Sadetsky wrote:
The tests passes after the fix for me. Which situations do you mean? Can you provide examples?

For example in XFramePeer.setVisible() it is possible that the peer became disposed after the new check.


--Semyon


On 09/11/2017 03:20 PM, Sergey Bylokhov wrote:
Hi, Semyon.
Did you check why the bug is not reproduced on jdk8?
I guess that it is still possible to get a situations below because of absent synchronization on all paths of usage "window",isDispose() and dispose() method:
 - check isDispose().
 - dispose the peer
 - use the long value which was disposed step above


On 9/8/17 20:00, Semyon Sadetsky wrote:
Hello,

Please review fix for JDK10:

bug: https://bugs.openjdk.java.net/browse/JDK-8186495

webrev: http://cr.openjdk.java.net/~ssadetsky/8186495/webrev.00/

After toolkit window is destroyed methods invocations on the window component may cause exceptions because of wrong native xwindow ID. The fix introduces checks in the X* peers to ensure that window ID is actual otherwise do nothing.

--Semyon


















--
Best regards, Sergey.

Reply via email to