Skip to content

Commit 9d4f1a7

Browse files
committed
fix MapMap#remove result, fixes microsoft#13548
1 parent b978e44 commit 9d4f1a7

2 files changed

Lines changed: 12 additions & 3 deletions

File tree

src/vs/platform/markers/common/markerService.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,13 +33,14 @@ namespace MapMap {
3333
}
3434

3535
export function remove(map: MapMap<any>, key1: string, key2: string): boolean {
36-
if (map[key1]) {
37-
const result = delete map[key1][key2];
36+
if (map[key1] && map[key1][key2]) {
37+
delete map[key1][key2];
3838
if (isEmptyObject(map[key1])) {
3939
delete map[key1];
4040
}
41-
return result;
41+
return true;
4242
}
43+
return false;
4344
}
4445
}
4546

src/vs/platform/markers/test/common/markerService.test.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -168,4 +168,12 @@ suite('Marker Service', () => {
168168
service.changeOne('far', URI.parse('some:uri/path'), [data]);
169169
assert.equal(service.read({ owner: 'far' }).length, 1);
170170
});
171+
172+
test('MapMap#remove returns bad values, https://github.com/Microsoft/vscode/issues/13548', () => {
173+
let service = new markerService.MarkerService();
174+
175+
service.changeOne('o', URI.parse('some:uri/1'), [randomMarkerData()]);
176+
service.changeOne('o', URI.parse('some:uri/2'), []);
177+
178+
});
171179
});

0 commit comments

Comments
 (0)