From: DUC ANH HOANG Date: Fri, 20 Sep 2024 07:39:39 +0000 (+0200) Subject: Fix: Get current direction X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=bc43cd95e40e2e42184f58f34c9ecc6a1f83eb63;p=modules%2Fhomard.git Fix: Get current direction --- diff --git a/src/HOMARD_I/HOMARD_Gen_i.cxx b/src/HOMARD_I/HOMARD_Gen_i.cxx index 8c4dbcd3..2023ed93 100644 --- a/src/HOMARD_I/HOMARD_Gen_i.cxx +++ b/src/HOMARD_I/HOMARD_Gen_i.cxx @@ -1262,7 +1262,11 @@ HOMARD::HOMARD_Cas_ptr HOMARD_Gen_i::CreateCaseFromIteration(const char* nomCas, #ifndef _WIN32 std::string nomDirWork = getenv("PWD") ; #else - std::string nomDirWork = getenv("CD") ; + std::string nomDirWork; + char cwd[1024]; + if (_getcwd(cwd, sizeof(cwd)) != NULL) { + nomDirWork = cwd; + } #endif int codret ; @@ -1543,7 +1547,11 @@ std::string HOMARD_Gen_i::CreateCase1(const char* DirNameStart, CORBA::Long Numb #ifndef _WIN32 std::string nomDirWork = getenv("PWD") ; #else - std::string nomDirWork = getenv("CD") ; + std::string nomDirWork; + char cwd[1024]; + if (_getcwd(cwd, sizeof(cwd)) != NULL) { + nomDirWork = cwd; + } #endif std::string DirNameStartIter ; int codret ; @@ -2541,7 +2549,11 @@ CORBA::Long HOMARD_Gen_i::Compute(const char* NomIteration, CORBA::Long etatMena #ifndef _WIN32 std::string nomDirWork = getenv("PWD") ; #else - std::string nomDirWork = getenv("CD") ; + std::string nomDirWork; + char cwd[1024]; + if (_getcwd(cwd, sizeof(cwd)) != NULL) { + nomDirWork = cwd; + } #endif // B.2. Le sous-répertoire de l'iteration a traiter char* DirCompute = ComputeDirManagement(myCase, myIteration, etatMenage); @@ -3116,9 +3128,13 @@ char* HOMARD_Gen_i::CreateDirNameIter(const char* nomrep, CORBA::Long num ) return 0; }; #ifndef _WIN32 - std::string nomDiriActuel = getenv("PWD") ; + std::string nomDirActuel = getenv("PWD") ; #else - std::string nomDirActuel = getenv("CD") ; + std::string nomDirActuel; + char cwd[1024]; + if (_getcwd(cwd, sizeof(cwd)) != NULL) { + nomDirActuel = cwd; + } #endif std::string DirName ; // On boucle sur tous les noms possibles jusqu'a trouver un nom correspondant a un répertoire inconnu