Bladeren bron

Improves error handling for #2209

main
Eric Amodio 1 jaar geleden
bovenliggende
commit
f7dc254a23
1 gewijzigde bestanden met toevoegingen van 6 en 5 verwijderingen
  1. +6
    -5
      src/codelens/codeLensProvider.ts

+ 6
- 5
src/codelens/codeLensProvider.ts Bestand weergeven

@ -31,6 +31,7 @@ import { configuration } from '../system/configuration';
import { is, once } from '../system/function';
import { filterMap, find, first, join, map } from '../system/iterable';
import { Logger } from '../system/logger';
import { pluralize } from '../system/string';
import { isVirtualUri } from '../system/utils';
class GitRecentChangeCodeLens extends CodeLens {
@ -477,10 +478,10 @@ export class GitCodeLensProvider implements CodeLensProvider {
private resolveGitRecentChangeCodeLens(lens: GitRecentChangeCodeLens, _token: CancellationToken): CodeLens {
const blame = lens.getBlame();
if (blame == null) return lens;
if (blame == null) return applyCommandWithNoClickAction('Unknown, (Blame failed)', lens);
const recentCommit = first(blame.commits.values());
if (recentCommit == null) return lens;
if (recentCommit == null) return applyCommandWithNoClickAction('Unknown, (Blame failed)', lens);
// TODO@eamodio This is FAR too expensive, but this accounts for commits that delete lines -- is there another way?
// if (lens.uri != null) {
@ -553,12 +554,12 @@ export class GitCodeLensProvider implements CodeLensProvider {
private resolveGitAuthorsCodeLens(lens: GitAuthorsCodeLens, _token: CancellationToken): CodeLens {
const blame = lens.getBlame();
if (blame == null) return lens;
if (blame == null) return applyCommandWithNoClickAction('? authors (Blame failed)', lens);
const count = blame.authors.size;
const author = first(blame.authors.values())?.name ?? 'Unknown';
let title = `${count} ${count > 1 ? 'authors' : 'author'} (${author}${count > 1 ? ' and others' : ''})`;
let title = `${pluralize('author', count, { zero: '?' })} (${author}${count > 1 ? ' and others' : ''})`;
if (configuration.get('debug')) {
title += ` [${lens.languageId}: ${SymbolKind[lens.symbol.kind]}(${lens.range.start.character}-${
lens.range.end.character
@ -577,7 +578,7 @@ export class GitCodeLensProvider implements CodeLensProvider {
}
const commit = find(blame.commits.values(), c => c.author.name === author) ?? first(blame.commits.values());
if (commit == null) return lens;
if (commit == null) return applyCommandWithNoClickAction(title, lens);
switch (lens.desiredCommand) {
case CodeLensCommand.CopyRemoteCommitUrl:

Laden…
Annuleren
Opslaan