author | llornkcor <llornkcor> | 2002-10-10 19:56:29 (UTC) |
---|---|---|
committer | llornkcor <llornkcor> | 2002-10-10 19:56:29 (UTC) |
commit | 4aa326251d797d12e5228a7a1ea6d45518e64ba5 (patch) (side-by-side diff) | |
tree | 4cc63e5bb3e9aa520a90780de261979ffc3dfd21 | |
parent | 946708623722041624b0435acfb2fa678959adba (diff) | |
download | opie-4aa326251d797d12e5228a7a1ea6d45518e64ba5.zip opie-4aa326251d797d12e5228a7a1ea6d45518e64ba5.tar.gz opie-4aa326251d797d12e5228a7a1ea6d45518e64ba5.tar.bz2 |
bastard standard login shell
-rw-r--r-- | core/apps/embeddedkonsole/MyPty.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/core/apps/embeddedkonsole/MyPty.cpp b/core/apps/embeddedkonsole/MyPty.cpp index 6421ab0..9adc248 100644 --- a/core/apps/embeddedkonsole/MyPty.cpp +++ b/core/apps/embeddedkonsole/MyPty.cpp @@ -61,12 +61,13 @@ There's a sinister ioctl(2), signal(2) and job control stuff nessesary to make everything work as it should. */ +#include <qfileinfo.h> #include <qapplication.h> #include <qsocketnotifier.h> #include <qstring.h> #include <stdlib.h> #include <stdio.h> @@ -166,14 +167,16 @@ int MyPty::run(const char* cmd, QStrList &, const char*, int) setenv("COLORTERM","0",1); if (getuid() == 0) { char msg[] = "WARNING: You are running this shell as root!\n"; write(ttyfd, msg, sizeof(msg)); } -; //creates a login shell - execl(cmd, cmd, "--login", 0); + + QString ccmd = "-"+QFileInfo(cmd).fileName(); //creates a login shell + + execl(cmd, ccmd.latin1(), 0); donePty(); exit(-1); } // parent - continue as a widget |