RFR: 8176501: Method Shape.getBounds2D() incorrectly includes Bezier control points in bounding box [v2]

Jeremy duke at openjdk.java.net
Sun May 22 17:57:27 UTC 2022


> This resolves an occasional unit test failure in Path2D.UnitTest.
> 
> The previous Path2D#getBounds2D(PathIterator) implementation assumed that after a SEG_CLOSE the next segment would always be a SEG_MOVETO to start a new clearly defined segment. But the Path2D.UnitTest created random paths that didn't follow this expectation.
> 
> This commit updates #getBounds2D(PathIterator) so it will move the cursor back to the (moveX, moveY) point for the sake of calculating future segments. This appears to resolve the unit test failures.
> 
> This commit also modifies the unit test so it logs random seeds. This may help developers isolate/reproduce specific failures with more certainty.

Jeremy has updated the pull request incrementally with one additional commit since the last revision:

  8176501: Method Shape.getBounds2D() incorrectly includes Bezier control points in bounding box
  
  Renaming "moveX"/"moveY" to "startX"/"startY" at Laurent's suggestion.

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

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/8828/files
  - new: https://git.openjdk.java.net/jdk/pull/8828/files/5aebb1b7..88346f4d

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=8828&range=01
 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=8828&range=00-01

  Stats: 6 lines in 1 file changed: 0 ins; 0 del; 6 mod
  Patch: https://git.openjdk.java.net/jdk/pull/8828.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/8828/head:pull/8828

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



More information about the client-libs-dev mailing list