<Swing Dev> RFR: 8262085: Hovering Metal HTML Tooltips in different windows cause IllegalArgExc on Linux

Alexander Zvegintsev azvegint at openjdk.java.net
Sat Feb 27 17:09:06 UTC 2021


This issue occurs only under `MetalLookAndFeel` on Linux. 

It was introduced by [JDK-8040630](https://bugs.openjdk.java.net/browse/JDK-8040630) fix.

> component.setBounds(ownerX, ownerY, 1, 1);

This line adds an extra reshape call with `1x1` size right before getting another one with correct sizes.

If `MetalToolTipUI#paint()` call happens before getting correct sizes,  it calculates `paintTextR` with negative sizes for component with `1x1` size,  thus IAE is thrown.

The fix is to do not proceed with `paint()` for negative sizes.
The provided test fails for me in 0-30s interval(before the fix), other testing(client-tier1,2,3) looks good.

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

Commit messages:
 - reduce timeout
 - initial

Changes: https://git.openjdk.java.net/jdk/pull/2761/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=2761&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8262085
  Stats: 160 lines in 2 files changed: 157 ins; 2 del; 1 mod
  Patch: https://git.openjdk.java.net/jdk/pull/2761.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/2761/head:pull/2761

PR: https://git.openjdk.java.net/jdk/pull/2761


More information about the swing-dev mailing list