diff --git a/addons/xterm-addon-webgl/src/WebglRenderer.ts b/addons/xterm-addon-webgl/src/WebglRenderer.ts index be4ea809..fcb0dd80 100644 --- a/addons/xterm-addon-webgl/src/WebglRenderer.ts +++ b/addons/xterm-addon-webgl/src/WebglRenderer.ts @@ -366,7 +366,8 @@ export class WebglRenderer extends Disposable implements IRenderer { let i: number; let x: number; let j: number; - + start = clamp(start, terminal.rows - 1, 0); + end = clamp(end, terminal.rows - 1, 0); for (y = start; y <= end; y++) { row = y + terminal.buffer.ydisp; line = terminal.buffer.lines.get(row)!; @@ -570,3 +571,7 @@ export class JoinedCellData extends AttributeData implements ICellData { return [this.fg, this.getChars(), this.getWidth(), this.getCode()]; } } + +function clamp(value: number, max: number, min: number = 0): number { + return Math.max(Math.min(value, max), min); +}