File tree Expand file tree Collapse file tree 2 files changed +10
-5
lines changed
addons/xterm-addon-webgl/src Expand file tree Collapse file tree 2 files changed +10
-5
lines changed Original file line number Diff line number Diff line change @@ -352,7 +352,7 @@ export class WebglRenderer extends Disposable implements IRenderer {
352
352
let lastBg : number ;
353
353
let y : number ;
354
354
let row : number ;
355
- let line : IBufferLine | undefined ;
355
+ let line : IBufferLine ;
356
356
let joinedRanges : [ number , number ] [ ] ;
357
357
let isJoined : boolean ;
358
358
let lastCharX : number ;
@@ -365,10 +365,7 @@ export class WebglRenderer extends Disposable implements IRenderer {
365
365
366
366
for ( y = start ; y <= end ; y ++ ) {
367
367
row = y + terminal . buffer . ydisp ;
368
- line = terminal . buffer . lines . get ( row ) ;
369
- if ( ! line ) {
370
- break ;
371
- }
368
+ line = terminal . buffer . lines . get ( row ) ! ;
372
369
this . _model . lineLengths [ y ] = 0 ;
373
370
joinedRanges = this . _characterJoinerService . getJoinedCharacters ( row ) ;
374
371
for ( x = 0 ; x < terminal . cols ; x ++ ) {
Original file line number Diff line number Diff line change @@ -152,6 +152,14 @@ export class RenderService extends Disposable implements IRenderService {
152
152
if ( ! this . _renderer ) {
153
153
return ;
154
154
}
155
+
156
+ // Since this is debounced, a resize event could have happened between the time a refresh was
157
+ // requested and when this triggers. Clamp the values of start and end to ensure they're valid
158
+ // given the current viewport state.
159
+ start = Math . min ( start , this . _rowCount - 1 ) ;
160
+ end = Math . min ( end , this . _rowCount - 1 ) ;
161
+
162
+ // Render
155
163
this . _renderer . renderRows ( start , end ) ;
156
164
157
165
// Update selection if needed
You can’t perform that action at this time.
0 commit comments