> This PR fixes a regression after 
> [JDK-8212102](https://bugs.openjdk.org/browse/JDK-8212102).
> 
> When a TextField control has some previous content, and new text with only 
> invalid characters (0x7F, new line, tabs, <0x20) is set, 
> `TextInputControl::filterInput` is used to strip them out, and the new text 
> has length 0.
> 
> During the refactoring in JDK-8212102, the checks:
> 
> int length = txt.length();
> if (end > start + length) end = length;
> if (start > length-1) start = end = 0;
> 
> were removed. 
> 
> In this particular case, when the new filtered text has length 0, we need 
> those checks, so start and end are set to 0, and txt.substring(start, end) 
> doesn't throw the IOOBE anymore.
> 
> A test is added to verify this scenario. It fails with the proposed patch, 
> passes with it.

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

  add curly braces

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

Changes:
  - all: https://git.openjdk.org/jfx/pull/1043/files
  - new: https://git.openjdk.org/jfx/pull/1043/files/0163b014..cc94040c

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jfx&pr=1043&range=01
 - incr: https://webrevs.openjdk.org/?repo=jfx&pr=1043&range=00-01

  Stats: 6 lines in 1 file changed: 4 ins; 0 del; 2 mod
  Patch: https://git.openjdk.org/jfx/pull/1043.diff
  Fetch: git fetch https://git.openjdk.org/jfx pull/1043/head:pull/1043

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

Reply via email to