]> SALOME platform Git repositories - modules/homard.git/commitdiff
Salome HOME
Fix: Get current direction
authorDUC ANH HOANG <dh77501n@dsp1043837>
Fri, 20 Sep 2024 07:39:39 +0000 (09:39 +0200)
committerDUC ANH HOANG <dh77501n@dsp1043837>
Fri, 20 Sep 2024 07:39:39 +0000 (09:39 +0200)
src/HOMARD_I/HOMARD_Gen_i.cxx

index 8c4dbcd3399b6064e1f218cfd190ef9f687fe5dc..2023ed938d39689cee3fd41bf20772c78778a6a0 100644 (file)
@@ -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