Skip to content

Commit 9628fab

Browse files
authored
Fixes edge case (microsoft#158888)
1 parent d5a5929 commit 9628fab

File tree

3 files changed

+7
-1
lines changed

3 files changed

+7
-1
lines changed

src/vs/workbench/contrib/mergeEditor/browser/model/mergeEditorModel.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -334,6 +334,10 @@ export class MergeEditorModel extends EditorModel {
334334
return ModifiedBaseRangeState.conflicting;
335335
}
336336

337+
public has(baseRange: ModifiedBaseRange): boolean {
338+
return this.modifiedBaseRangeHandlingStateStores.get().has(baseRange);
339+
}
340+
337341
public isHandled(baseRange: ModifiedBaseRange): IObservable<boolean> {
338342
return this.modifiedBaseRangeHandlingStateStores.get().get(baseRange)!;
339343
}

src/vs/workbench/contrib/mergeEditor/browser/model/modifiedBaseRange.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,6 @@ export class ModifiedBaseRange {
4848
public readonly input1CombinedDiff = DetailedLineRangeMapping.join(this.input1Diffs);
4949
public readonly input2CombinedDiff = DetailedLineRangeMapping.join(this.input2Diffs);
5050

51-
5251
constructor(
5352
public readonly baseRange: LineRange,
5453
public readonly baseTextModel: ITextModel,

src/vs/workbench/contrib/mergeEditor/browser/view/editors/inputCodeEditorView.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,9 @@ export class InputCodeEditorView extends CodeEditorView {
131131
className: derived('checkbox classnames', (reader) => {
132132
const classNames = [];
133133
const active = viewModel.activeModifiedBaseRange.read(reader);
134+
if (!model.has(baseRange)) {
135+
return ''; // Invalid state, should only be observed temporarily
136+
}
134137
const isHandled = model.isHandled(baseRange).read(reader);
135138
if (isHandled) {
136139
classNames.push('handled');

0 commit comments

Comments
 (0)