This PR adds a check to the Animation and AnimationTimer public methods to 
verify that these are called from the JavaFX Application thread. If the call is 
done from any other thread, an IllegalStateException will be thrown.

This will prevent users from getting unexpected errors (typically NPE, like the 
one posted in the JBS issue), and will fail fast with a clear exception and 
reason for it.

The javadoc of the Animation and AnimationTimer classes and public methods has 
been updated accordingly.

Tests for both classes have been included, failing (as in no exceptions were 
thrown when calling from a background thread) before this patch, and passing 
(as in ISE was thrown).

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

Commit messages:
 - remove trailing whitespace
 - Check FX thread on animation and animationTimer public methods, including 
tests

Changes: https://git.openjdk.org/jfx/pull/1167/files
 Webrev: https://webrevs.openjdk.org/?repo=jfx&pr=1167&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8159048
  Stats: 268 lines in 4 files changed: 255 ins; 0 del; 13 mod
  Patch: https://git.openjdk.org/jfx/pull/1167.diff
  Fetch: git fetch https://git.openjdk.org/jfx.git pull/1167/head:pull/1167

PR: https://git.openjdk.org/jfx/pull/1167

Reply via email to