]> SALOME platform Git repositories - modules/kernel.git/commitdiff
Salome HOME
USER or LOGNAME is not defined in a Docker container: on Linux get username with...
authorOvidiu Mircescu <ovidiu.mircescu@edf.fr>
Fri, 14 Apr 2023 09:03:22 +0000 (11:03 +0200)
committerNabil Ghodbane <nabil.ghodbane@cea.fr>
Wed, 19 Apr 2023 15:13:01 +0000 (17:13 +0200)
src/Launcher/Launcher_Job.cxx

index e878a7404d19383ea787106d6521cdcf69c47022..b724958185a52363ba6549f74f733231b1e643f5 100644 (file)
@@ -37,6 +37,7 @@
 #include <process.h>
 #else
   static const char SEPARATOR = '/';
+#include <pwd.h>
 #endif
 
 Launcher::Job::Job()
@@ -191,7 +192,12 @@ Launcher::Job::setResourceDefinition(const ParserResourcesType & resource_defini
   if (resource_definition.UserName == "")
   {
 #ifndef WIN32
-    user_name = getenv("USER");
+    struct passwd *pwd = getpwuid(getuid());
+    if (pwd) {
+      user_name = std::string(pwd->pw_name);
+    }
+    if (user_name == "")
+      user_name = getenv("USER");
 #else
     user_name = getenv("USERNAME");
 #endif