RFR: 8352109: java/awt/Desktop/MailTest.java fails in platforms where Action.MAIL is not supported

Manukumar V S mvs at openjdk.org
Sun Mar 16 09:03:37 UTC 2025


**Issue**
java/awt/Desktop/MailTest.java fails in platforms where Action.MAIL is not supported

**Reason**
In `MailTest.java`, there is a condition check(`if (!desktop.isSupported(Desktop.Action.MAIL))`) which will force pass the test if the corresponding 'Action' is not supported by the platform. But, apparently, this is not working good and the code flow went past this and fails in desktop.mail() method with an UnsupportedOperationException. 

**Fix**
Even though we are calling `PassFailJFrame.forcePass()` if the 'Action.MAIL' is unsupported, the PassFailJFrame just count downs a latch and the actual action will be taken later only(in `awaitAndCheck()`). But at the meantime, the desktop.mail() call gets executed in the constructor of MailTest() and it will result in an UnsupportedOperationException. So, the fix is to return from the constructor immediately if the operation is 'unsupported'.

**Testing**
This is a manual test, so it is tested locally and found to be working fine.

-------------

Commit messages:
 - 8352109: java/awt/Desktop/MailTest.java fails in platforms where Action.MAIL is not supported

Changes: https://git.openjdk.org/jdk/pull/24072/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=24072&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8352109
  Stats: 2 lines in 1 file changed: 2 ins; 0 del; 0 mod
  Patch: https://git.openjdk.org/jdk/pull/24072.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/24072/head:pull/24072

PR: https://git.openjdk.org/jdk/pull/24072


More information about the client-libs-dev mailing list