diff --git a/python/src/com/jetbrains/python/codeInsight/editorActions/moveUpDown/PyStatementMover.java b/python/src/com/jetbrains/python/codeInsight/editorActions/moveUpDown/PyStatementMover.java index b3264a65f361..65cd5e1a79ce 100644 --- a/python/src/com/jetbrains/python/codeInsight/editorActions/moveUpDown/PyStatementMover.java +++ b/python/src/com/jetbrains/python/codeInsight/editorActions/moveUpDown/PyStatementMover.java @@ -47,11 +47,13 @@ public class PyStatementMover extends LineMover { final Document document = editor.getDocument(); final int lineNumber = document.getLineNumber(offset); int start = getLineStartSafeOffset(document, lineNumber); - int end = document.getLineEndOffset(lineNumber) - 1; + final int lineEndOffset = document.getLineEndOffset(lineNumber); + int end = lineEndOffset == 0 ? 0 : lineEndOffset - 1; if (selectionModel.hasSelection()) { start = selectionModel.getSelectionStart(); - end = selectionModel.getSelectionEnd() - 1; + final int selectionEnd = selectionModel.getSelectionEnd(); + end = selectionEnd == 0 ? 0 : selectionEnd - 1; } PsiElement elementToMove1 = PyUtil.findNonWhitespaceAtOffset(file, start); PsiElement elementToMove2 = PyUtil.findNonWhitespaceAtOffset(file, end);