Use toDisposable in more places in workbench and platform

This commit is contained in:
Matt Bierner
2018-07-19 16:10:33 -07:00
parent ad7cbfdacb
commit a6885b48cd
11 changed files with 53 additions and 69 deletions

View File

@@ -15,6 +15,7 @@ import * as extfs from 'vs/base/node/extfs';
import { IFileMatch, IFolderQuery, IPatternInfo, IRawSearchQuery, ISearchCompleteStats, ISearchQuery } from 'vs/platform/search/common/search';
import * as vscode from 'vscode';
import { ExtHostSearchShape, IMainContext, MainContext, MainThreadSearchShape } from './extHost.protocol';
import { toDisposable } from 'vs/base/common/lifecycle';
export interface ISchemeTransformer {
transformOutgoing(scheme: string): string;
@@ -44,12 +45,10 @@ export class ExtHostSearch implements ExtHostSearchShape {
const handle = this._handlePool++;
this._searchProvider.set(handle, provider);
this._proxy.$registerSearchProvider(handle, this._transformScheme(scheme));
return {
dispose: () => {
this._searchProvider.delete(handle);
this._proxy.$unregisterProvider(handle);
}
};
return toDisposable(() => {
this._searchProvider.delete(handle);
this._proxy.$unregisterProvider(handle);
});
}
$provideFileSearchResults(handle: number, session: number, rawQuery: IRawSearchQuery): TPromise<ISearchCompleteStats> {