[8] Review request for 6847588: AWT test fails (original) (raw)

Anton Litvinov anton.litvinov at oracle.com
Thu Jun 13 01:39:25 PDT 2013


Hello Sergey and Anthony,

Thank you very much for review of this fix. Anthony, thank you for approval of the current version of the fix and defending your position concerning appropriateness of usage of "sun.awt.AWTAccessor.ComponentAccessor.getPeer" method in this case.

Since there was not reached an agreement about usage of either "getPeer" or "targetToPeer" method in your discussion, I would like to provide one argument against "targetToPeer" method in this case. The method "sun.awt.AWTAutoShutdown.getPeer" which will be called, if "targetToPeer" approach is used, will introduce acquiring of two different locks in "XKeyboardFocusManagerPeer" class that did not exist before, does not a chance of appearance of a deadlock exist in such case? May be, it makes sense to use "ComponentAccessor.getPeer" method at least from the point of not running the risk of getting a deadlock?

Thank you, Anton

On 6/11/2013 6:00 PM, Sergey Bylokhov wrote:

On 11.06.2013 17:21, Anthony Petrov wrote:

On 06/11/2013 03:31 PM, Sergey Bylokhov wrote:

On 11.06.2013 15:04, Anthony Petrov wrote:

In (X)KFMPeer.java we know we always operate on Window instances. The setCurrentFocusedWindow(Window) method will never be called with any other components. Therefore, to avoid the overhead of taking multiple locks I suggest to use the AWTAccessor.getPeer directly in this case. Also at least in XToolkit TTP has its own peers map for text components: specialPeerMap



More information about the awt-dev mailing list