<AWT Dev> [10] Review request for 8186495: Some closed SQE tests fail after frame dispose() on Linux

Sergey Bylokhov Sergey.Bylokhov at oracle.com
Wed Sep 13 19:30:35 UTC 2017


On 9/13/17 12:19, Semyon Sadetsky wrote:
> Obviously those peers was not developed with the multi-threaded access 
> kept in mind.

It is not obviously since it should be thread safe, and it is already 
used minimum from 3 threads main/edt/toolkit.

> 
> --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.


More information about the awt-dev mailing list