Skip to content

Commit e3965e5

Browse files
committed
Strict null check inPlaceReplace
1 parent 0ff572f commit e3965e5

File tree

1 file changed

+11
-17
lines changed

1 file changed

+11
-17
lines changed

src/vs/editor/contrib/inPlaceReplace/inPlaceReplace.ts

Lines changed: 11 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -55,32 +55,26 @@ class InPlaceReplaceController implements IEditorContribution {
5555
return InPlaceReplaceController.ID;
5656
}
5757

58-
public run(source: string, up: boolean): Promise<void> {
58+
public run(source: string, up: boolean): Promise<void> | undefined {
5959

6060
// cancel any pending request
6161
if (this.currentRequest) {
6262
this.currentRequest.cancel();
6363
}
6464

65-
let selection = this.editor.getSelection();
66-
if (selection === null) {
67-
return Promise.resolve(void 0);
68-
}
69-
65+
const editorSelection = this.editor.getSelection();
7066
const model = this.editor.getModel();
71-
if (!model) {
72-
return Promise.resolve(void 0);
67+
if (!model || !editorSelection) {
68+
return undefined;
7369
}
74-
75-
const modelURI = model.uri;
76-
70+
let selection = editorSelection;
7771
if (selection.startLineNumber !== selection.endLineNumber) {
7872
// Can't accept multiline selection
79-
return Promise.resolve(void 0);
73+
return undefined;
8074
}
8175

8276
const state = new EditorState(this.editor, CodeEditorStateFlag.Value | CodeEditorStateFlag.Position);
83-
77+
const modelURI = model.uri;
8478
if (!this.editorWorkerService.canNavigateValueSet(modelURI)) {
8579
return Promise.resolve(void 0);
8680
}
@@ -155,8 +149,8 @@ class InPlaceReplaceUp extends EditorAction {
155149
});
156150
}
157151

158-
public run(accessor: ServicesAccessor, editor: ICodeEditor): Promise<void> {
159-
let controller = InPlaceReplaceController.get(editor);
152+
public run(accessor: ServicesAccessor, editor: ICodeEditor): Promise<void> | undefined {
153+
const controller = InPlaceReplaceController.get(editor);
160154
if (!controller) {
161155
return Promise.resolve(void 0);
162156
}
@@ -180,8 +174,8 @@ class InPlaceReplaceDown extends EditorAction {
180174
});
181175
}
182176

183-
public run(accessor: ServicesAccessor, editor: ICodeEditor): Promise<void> {
184-
let controller = InPlaceReplaceController.get(editor);
177+
public run(accessor: ServicesAccessor, editor: ICodeEditor): Promise<void> | undefined {
178+
const controller = InPlaceReplaceController.get(editor);
185179
if (!controller) {
186180
return Promise.resolve(void 0);
187181
}

0 commit comments

Comments
 (0)