@@ -79,8 +79,6 @@ export abstract class AbstractSynchroniser extends Disposable {
7979 private _onDidChangStatus : Emitter < SyncStatus > = this . _register ( new Emitter < SyncStatus > ( ) ) ;
8080 readonly onDidChangeStatus : Event < SyncStatus > = this . _onDidChangStatus . event ;
8181
82- private _resourcePreviews : IResourcePreview [ ] = [ ] ;
83-
8482 private _conflicts : IResourcePreview [ ] = [ ] ;
8583 get conflicts ( ) : IResourcePreview [ ] { return this . _conflicts ; }
8684 private _onDidChangeConflicts : Emitter < IResourcePreview [ ] > = this . _register ( new Emitter < IResourcePreview [ ] > ( ) ) ;
@@ -382,18 +380,8 @@ export abstract class AbstractSynchroniser extends Disposable {
382380
383381 try {
384382 this . syncHeaders = { ...headers } ;
385-
386383 const preview = await this . syncPreviewPromise ;
387- this . syncPreviewPromise = createCancelablePromise ( async token => {
388- const newPreview = await this . updateSyncResourcePreviewContent ( preview , resource , content , token ) ;
389-
390- if ( ! token . isCancellationRequested ) {
391- await this . updateResourcePreviews ( newPreview . resourcePreviews , token ) ;
392- }
393-
394- return newPreview ;
395- } ) ;
396-
384+ this . syncPreviewPromise = createCancelablePromise ( token => this . updateSyncResourcePreviewContent ( preview , resource , content , token ) ) ;
397385 return this . merge ( resource , force , headers ) ;
398386 } finally {
399387 this . syncHeaders = { } ;
@@ -456,8 +444,8 @@ export abstract class AbstractSynchroniser extends Disposable {
456444 // reset preview
457445 this . syncPreviewPromise = null ;
458446
459- // reset resource previews
460- await this . updateResourcePreviews ( [ ] , CancellationToken . None ) ;
447+ // reset preview folder
448+ await this . clearPreviewFolder ( ) ;
461449
462450 return SyncStatus . Idle ;
463451 }
@@ -488,18 +476,10 @@ export abstract class AbstractSynchroniser extends Disposable {
488476 } ;
489477 }
490478
491- private async updateResourcePreviews ( resourcePreviews : IResourcePreview [ ] , token : CancellationToken ) : Promise < void > {
492- const oldPreviews = this . _resourcePreviews ;
493- this . _resourcePreviews = resourcePreviews ;
494-
495- // clear obsolete previews
496- for ( const resourcePreview of oldPreviews ) {
497- if ( ! this . _resourcePreviews . some ( ( { previewResource } ) => isEqual ( previewResource , resourcePreview . previewResource ) ) ) {
498- try {
499- await this . fileService . del ( resourcePreview . previewResource ) ;
500- } catch ( error ) { /* Ignore */ }
501- }
502- }
479+ private async clearPreviewFolder ( ) : Promise < void > {
480+ try {
481+ await this . fileService . del ( this . syncPreviewFolder , { recursive : true } ) ;
482+ } catch ( error ) { /* Ignore */ }
503483 }
504484
505485 private updateConflicts ( conflicts : IResourcePreview [ ] ) : void {
@@ -588,10 +568,6 @@ export abstract class AbstractSynchroniser extends Disposable {
588568 const lastSyncUserDataForPreview = lastSyncUserData === null && isLastSyncFromCurrentMachine ? remoteUserData : lastSyncUserData ;
589569 const resourcePreviews = await this . generateSyncPreview ( remoteUserData , lastSyncUserDataForPreview , token ) ;
590570
591- if ( ! token . isCancellationRequested ) {
592- await this . updateResourcePreviews ( resourcePreviews , token ) ;
593- }
594-
595571 return { remoteUserData, lastSyncUserData, resourcePreviews, isLastSyncFromCurrentMachine } ;
596572 }
597573
@@ -678,8 +654,8 @@ export abstract class AbstractSynchroniser extends Disposable {
678654 this . syncPreviewPromise = null ;
679655 }
680656
681- await this . updateResourcePreviews ( [ ] , CancellationToken . None ) ;
682657 this . updateConflicts ( [ ] ) ;
658+ await this . clearPreviewFolder ( ) ;
683659
684660 this . setStatus ( SyncStatus . Idle ) ;
685661 this . logService . info ( `${ this . syncResourceLogLabel } : Stopped synchronizing ${ this . resource . toLowerCase ( ) } .` ) ;
0 commit comments