Browse Source

Merge pull request #35019 from Paulb23/issue_35016_line_edit_backspace_crash

Fix empty LineEdit crash on ctrl+backspace
Rémi Verschelde 5 years ago
parent
commit
b563de702c
1 changed files with 2 additions and 2 deletions
  1. 2 2
      scene/gui/line_edit.cpp

+ 2 - 2
scene/gui/line_edit.cpp

@@ -1193,7 +1193,7 @@ void LineEdit::delete_char() {
 	set_cursor_position(get_cursor_position() - 1);
 
 	if (align == ALIGN_CENTER || align == ALIGN_RIGHT) {
-		window_pos = CLAMP(window_pos - 1, 0, text.length() - 1);
+		window_pos = CLAMP(window_pos - 1, 0, MAX(text.length() - 1, 0));
 	}
 
 	_text_changed();
@@ -1224,7 +1224,7 @@ void LineEdit::delete_text(int p_from_column, int p_to_column) {
 	}
 
 	if (align == ALIGN_CENTER || align == ALIGN_RIGHT) {
-		window_pos = CLAMP(window_pos - (p_to_column - p_from_column), 0, text.length() - 1);
+		window_pos = CLAMP(window_pos - (p_to_column - p_from_column), 0, MAX(text.length() - 1, 0));
 	}
 
 	if (!text_changed_dirty) {