<Swing Dev> [10][JDK-8190281] Code cleanup in src\java.desktop\share\classes\javax\swing\tree\VariableHeightLayoutCache.java

Krishna Addepalli krishna.addepalli at oracle.com
Wed Dec 6 09:13:28 UTC 2017

Hi All,


Please review the fix for bug:

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

JDK 10 Webrev: http://cr.openjdk.java.net/~kaddepalli/8190281/webrev00/


This bug was created while root causing JDK-8187936, and the following refactoring points have been addressed:


1. Line 927: Uninitialized variables, checking for trivial reject case multiple times. 
2. Line 999: Traditional code written to find maximum size of components, which can be done without any local variables and explicit looping by replacing with streams. 
3. Line 1365: Code repetition for differenct conditions, which can be ored together to reduce the repetition. 
4. Line 1482: A large code block gets repeated only because of different values need to be passed in one line. This can be moved to a variable initialization, and the repeating code blocks can be reduced to one. 
5. Line 1505: Variable initialization can be simplified by combining different conditions. 
6. Line 1540: An explicit loop to apply a function over a collection, can be achieved in one line by a forEach construct.  - This is producing some visual artifacts, so ignored.
7. Line 1747: Combine all the trivial reject cases into one condition, and also, a potential bug which increments the "nextIndex" value beyond the length of the containing elements. The increment should happen only if the trivial reject case fails.



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/swing-dev/attachments/20171206/79ee4a99/attachment.html>

More information about the swing-dev mailing list