Skip to content

Commit

Permalink
Merge pull request #805 from Tyriar/801_null_check
Browse files Browse the repository at this point in the history
Add null check when mouse coords are bad
  • Loading branch information
Tyriar authored Jul 20, 2017
2 parents f8e3fa5 + e3ded61 commit 18f3cc7
Showing 1 changed file with 11 additions and 3 deletions.
14 changes: 11 additions & 3 deletions src/SelectionManager.ts
Original file line number Diff line number Diff line change
Expand Up @@ -522,6 +522,10 @@ export class SelectionManager extends EventEmitter {
*/
private _getWordAt(coords: [number, number]): IWordPosition {
const bufferLine = this._buffer.get(coords[1]);
if (!bufferLine) {
return null;
}

const line = translateBufferLineToString(bufferLine, false);

// Get actual index, taking into consideration wide characters
Expand Down Expand Up @@ -590,8 +594,10 @@ export class SelectionManager extends EventEmitter {
*/
protected _selectWordAt(coords: [number, number]): void {
const wordPosition = this._getWordAt(coords);
this._model.selectionStart = [wordPosition.start, coords[1]];
this._model.selectionStartLength = wordPosition.length;
if (wordPosition) {
this._model.selectionStart = [wordPosition.start, coords[1]];
this._model.selectionStartLength = wordPosition.length;
}
}

/**
Expand All @@ -600,7 +606,9 @@ export class SelectionManager extends EventEmitter {
*/
private _selectToWordAt(coords: [number, number]): void {
const wordPosition = this._getWordAt(coords);
this._model.selectionEnd = [this._model.areSelectionValuesReversed() ? wordPosition.start : (wordPosition.start + wordPosition.length), coords[1]];
if (wordPosition) {
this._model.selectionEnd = [this._model.areSelectionValuesReversed() ? wordPosition.start : (wordPosition.start + wordPosition.length), coords[1]];
}
}

/**
Expand Down

0 comments on commit 18f3cc7

Please sign in to comment.