diff --git a/terminal-emulator/src/main/java/com/termux/terminal/TerminalBuffer.java b/terminal-emulator/src/main/java/com/termux/terminal/TerminalBuffer.java index 8b898434..4a74ee6f 100644 --- a/terminal-emulator/src/main/java/com/termux/terminal/TerminalBuffer.java +++ b/terminal-emulator/src/main/java/com/termux/terminal/TerminalBuffer.java @@ -93,8 +93,11 @@ public final class TerminalBuffer { if (c != ' ') lastPrintingCharIndex = i; } } - if (lastPrintingCharIndex != -1) - builder.append(line, x1Index, lastPrintingCharIndex - x1Index + 1); + + int len = lastPrintingCharIndex - x1Index + 1; + if (lastPrintingCharIndex != -1 && len > 0) + builder.append(line, x1Index, len); + boolean lineFillsWidth = lastPrintingCharIndex == x2Index - 1; if ((!joinBackLines || !rowLineWrap) && (!joinFullLines || !lineFillsWidth) && row < selY2 && row < mScreenRows - 1) builder.append('\n');