create unique temporary directories to prevent permission issues (#7173)

* minor fix to prevent multiple mldotnet directories

* forgot missing increment
This commit is contained in:
Erik 2024-07-26 23:04:17 -04:00 коммит произвёл GitHub
Родитель ba94d7abff
Коммит b4a4b10954
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: B5690EEEBB952194
1 изменённых файлов: 4 добавлений и 2 удалений

Просмотреть файл

@ -123,8 +123,10 @@ internal abstract class Repository : IDisposable
string tempPath = ectx is IHostEnvironmentInternal iHostInternal ?
iHostInternal.TempFilePath :
Path.GetTempPath();
string path = Path.Combine(Path.GetFullPath(tempPath), "ml_dotnet", Path.GetRandomFileName());
int dirNumber = 0;
string mlNetTempDir = null!;
while (Directory.Exists(mlNetTempDir = Path.Combine(Path.GetFullPath(tempPath), $"ml_dotnet{dirNumber++}"))) ;
var path = Path.Combine(mlNetTempDir, Path.GetRandomFileName());
Directory.CreateDirectory(path);
return path;
}