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

Reply via email to