mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
Java: Prevent IOOBE in extract method preview diff (IDEA-189384)
This commit is contained in:
+3
-2
@@ -273,8 +273,9 @@ class PreviewDiffPanel extends BorderLayoutPanel implements Disposable, PreviewT
|
||||
|
||||
@NotNull
|
||||
private static TextRange getLinesRange(@NotNull TextRange textRange, @NotNull Document document) {
|
||||
return new TextRange(document.getLineStartOffset(document.getLineNumber(textRange.getStartOffset())),
|
||||
document.getLineEndOffset(document.getLineNumber(textRange.getEndOffset())) + 1);
|
||||
int startLine = document.getLineNumber(textRange.getStartOffset());
|
||||
int endLine = document.getLineNumber(Math.min(textRange.getEndOffset(), document.getTextLength()));
|
||||
return new TextRange(document.getLineStartOffset(startLine), document.getLineEndOffset(endLine));
|
||||
}
|
||||
|
||||
private static void doExtractImpl(@NotNull JavaDuplicatesExtractMethodProcessor processor,
|
||||
|
||||
+1
-1
@@ -99,7 +99,7 @@ class PreviewDiffRequest extends SimpleDiffRequest {
|
||||
int newOffset = e.getEditor().logicalPositionToOffset(e.getNewPosition());
|
||||
for (Map.Entry<FragmentNode, Couple<TextRange>> entry : myLinesBounds.entrySet()) {
|
||||
TextRange range = mySideGetter.apply(entry.getValue());
|
||||
if (range.contains(newOffset)) {
|
||||
if (range.containsOffset(newOffset)) {
|
||||
mySelectNode.consume(entry.getKey());
|
||||
break;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user