On 6/8/2016 5:35 PM, Ajit Ghaisas wrote:
Hi,

Bug :
https://bugs.openjdk.java.net/browse/JDK-8065861

Issue :
Pressing Esc does not set 'canceled' property of ProgressMonitor

Analysis :
ProgressMonitor option pane only gets hidden on pressing Escape key.
It is not truly canceled as isCanceled() method continues to return false.

Fix :
On Pressing Escape key JOptionPane.CLOSED_OPTION value is set in JOptionPane 
from BasicOptionPaneUI.java.
This value is used as a condition in isCanceled() to identify ProgressMonitor 
is canceled by pressing Escape key.

Please review the webrev:
http://cr.openjdk.java.net/~aghaisas/8065861/webrev.00/
The updated code calls methods from 'v' object before it is checked to the null which can lead to the NPE. The cancelOption[0] also can throw the IOBE before the arrays length checking.

  Thanks,
  Alexandr.
On review completion, I will raise a CCC request for documentation change.

Regards,
Ajit

Reply via email to