mirror of
https://github.com/Microsoft/vscode
synced 2024-09-13 21:55:38 +00:00
remote - use posix-path-logic for path-math in URIs
This commit is contained in:
parent
08ba13246f
commit
294337b0dc
|
@ -8,7 +8,7 @@ import URI from 'vs/base/common/uri';
|
||||||
import { FileService } from 'vs/workbench/services/files/electron-browser/fileService';
|
import { FileService } from 'vs/workbench/services/files/electron-browser/fileService';
|
||||||
import { IContent, IStreamContent, IFileStat, IResolveContentOptions, IUpdateContentOptions, IResolveFileOptions, IResolveFileResult, FileOperationEvent, FileOperation, IFileSystemProvider, IStat, FileType, IImportResult, FileChangesEvent, ICreateFileOptions, FileOperationError, FileOperationResult, ITextSnapshot, snapshotToString } from 'vs/platform/files/common/files';
|
import { IContent, IStreamContent, IFileStat, IResolveContentOptions, IUpdateContentOptions, IResolveFileOptions, IResolveFileResult, FileOperationEvent, FileOperation, IFileSystemProvider, IStat, FileType, IImportResult, FileChangesEvent, ICreateFileOptions, FileOperationError, FileOperationResult, ITextSnapshot, snapshotToString } from 'vs/platform/files/common/files';
|
||||||
import { TPromise } from 'vs/base/common/winjs.base';
|
import { TPromise } from 'vs/base/common/winjs.base';
|
||||||
import { basename, join } from 'path';
|
import { posix } from 'path';
|
||||||
import { IDisposable } from 'vs/base/common/lifecycle';
|
import { IDisposable } from 'vs/base/common/lifecycle';
|
||||||
import { isFalsyOrEmpty, distinct } from 'vs/base/common/arrays';
|
import { isFalsyOrEmpty, distinct } from 'vs/base/common/arrays';
|
||||||
import { Schemas } from 'vs/base/common/network';
|
import { Schemas } from 'vs/base/common/network';
|
||||||
|
@ -33,7 +33,7 @@ function toIFileStat(provider: IFileSystemProvider, tuple: [URI, IStat], recurse
|
||||||
isDirectory: false,
|
isDirectory: false,
|
||||||
isSymbolicLink: stat.type === FileType.Symlink,
|
isSymbolicLink: stat.type === FileType.Symlink,
|
||||||
resource: resource,
|
resource: resource,
|
||||||
name: basename(resource.path),
|
name: posix.basename(resource.path),
|
||||||
mtime: stat.mtime,
|
mtime: stat.mtime,
|
||||||
size: stat.size,
|
size: stat.size,
|
||||||
etag: stat.mtime.toString(29) + stat.size.toString(31),
|
etag: stat.mtime.toString(29) + stat.size.toString(31),
|
||||||
|
@ -421,7 +421,7 @@ export class RemoteFileService extends FileService {
|
||||||
if (resource.scheme === Schemas.file) {
|
if (resource.scheme === Schemas.file) {
|
||||||
return super.rename(resource, newName);
|
return super.rename(resource, newName);
|
||||||
} else {
|
} else {
|
||||||
const target = resource.with({ path: join(resource.path, '..', newName) });
|
const target = resource.with({ path: posix.join(resource.path, '..', newName) });
|
||||||
return this._doMoveWithInScheme(resource, target, false);
|
return this._doMoveWithInScheme(resource, target, false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -467,7 +467,7 @@ export class RemoteFileService extends FileService {
|
||||||
if (source.scheme === targetFolder.scheme && source.scheme === Schemas.file) {
|
if (source.scheme === targetFolder.scheme && source.scheme === Schemas.file) {
|
||||||
return super.importFile(source, targetFolder);
|
return super.importFile(source, targetFolder);
|
||||||
} else {
|
} else {
|
||||||
const target = targetFolder.with({ path: join(targetFolder.path, basename(source.path)) });
|
const target = targetFolder.with({ path: posix.join(targetFolder.path, posix.basename(source.path)) });
|
||||||
return this.copyFile(source, target, false).then(stat => ({ stat, isNew: false }));
|
return this.copyFile(source, target, false).then(stat => ({ stat, isNew: false }));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue