994
995
break; // we have hit a directory that exists -> good
997
>
998
>
// Bubble up any other error that is not file not found
999
>
if (toFileSystemProviderErrorCode(error) !== FileSystemProviderErrorCode.FileNotFound) {
1000
throw error;
1001
}
1003
>
// Upon error, remember directories that need to be created
1004
>
directoriesToCreate.push(providerExtUri.basename(directory));
1005
>
1006
>
// Continue up
1007
>
directory = providerExtUri.dirname(directory);
1008
>
}
1009
>
}
1010
1011
// Create directories as needed
1012
for (let i = directoriesToCreate.length - 1; i >= 0; i--) {
1013
>
directory = providerExtUri.joinPath(directory, directoriesToCreate[i]);
fileService.ts
1014
>
1015
>
try {
1016
>
await provider.mkdir(directory);
1017
>
} catch (error) {
1018
if (toFileSystemProviderErrorCode(error) !== FileSystemProviderErrorCode.FileExists) {
1019
// For mkdirp() we tolerate that the mkdir() call fails