once again fix AIOOBE in Python backspace handler (EA-20251 - IOOBE: CharArray.charAt)

This commit is contained in:
Dmitry Jemerov
2010-08-29 17:01:10 +04:00
parent 3dc20c8a55
commit fb412d2c4a
@@ -157,8 +157,6 @@ public class BackspaceHandler extends EditorWriteActionHandler {
if (caretPos.line == 0 || caretPos.column == 0) {
return null;
}
final int startCheckRange = editor.getDocument().getLineStartOffset(caretPos.line);
final int endCheckRange = startCheckRange + caretPos.column;
final CharSequence charSeq = editor.getDocument().getCharsSequence();
// smart backspace is activated only if all characters in the check range are whitespace characters
@@ -166,9 +164,11 @@ public class BackspaceHandler extends EditorWriteActionHandler {
// use logicalPositionToOffset to make sure tabs are handled correctly
final LogicalPosition checkPos = new LogicalPosition(caretPos.line, pos);
final int offset = editor.logicalPositionToOffset(checkPos);
final char c = charSeq.charAt(offset);
if (c != '\t' && c != ' ' && c != '\n') {
return null;
if (offset < charSeq.length()) {
final char c = charSeq.charAt(offset);
if (c != '\t' && c != ' ' && c != '\n') {
return null;
}
}
}