On Sat, 7 Nov 2020 00:14:19 GMT, Sergey Bylokhov <s...@openjdk.org> wrote:
> The text components are implements as wrappers over the "native" peers. Most > of the functionality is provided by the peers not wrappers like > TextArea/TextField. The current bug occurs in the TextArea/TextField when the > native peer was created yet. > > The steps to reproduce: > 1. Sets the long text to the component > 2. Select all text in the component > 3. Sets the short text to the component > 4. Request the selected text -> BOOM > > The bug on step 4 occurred because we request a long substring of the short > text. To eliminate an exception we have two choices: > 1. Preserve the selection in the setText(), but limit it by the length of > the current text. > 2. Resets the selection. > > I tried both solutions, the second caused some TCK tests to fail, so I > selected the first one. This pull request has now been integrated. Changeset: 6472104e Author: Sergey Bylokhov <s...@openjdk.org> URL: https://git.openjdk.java.net/jdk/commit/6472104e Stats: 119 lines in 2 files changed: 107 ins; 3 del; 9 mod 6278172: TextComponent.getSelectedText() throws StringIndexOutOfBoundsException Reviewed-by: aivanov ------------- PR: https://git.openjdk.java.net/jdk/pull/1104