summaryrefslogtreecommitdiff
authorkergoth <kergoth>2002-05-13 15:26:27 (UTC)
committer kergoth <kergoth>2002-05-13 15:26:27 (UTC)
commit186743975bad7728dde9208f631d81ddc3dd47d9 (patch) (unidiff)
treed63df244352d766304279080693bf876faed9426
parent0a765726bcd937d2252d2004e266b799bada7266 (diff)
downloadopie-186743975bad7728dde9208f631d81ddc3dd47d9.zip
opie-186743975bad7728dde9208f631d81ddc3dd47d9.tar.gz
opie-186743975bad7728dde9208f631d81ddc3dd47d9.tar.bz2
Now calls /bin/sh - instead of /bin/sh, so that we spawn a login shell.
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--core/apps/embeddedkonsole/main.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/core/apps/embeddedkonsole/main.cpp b/core/apps/embeddedkonsole/main.cpp
index b3c0453..5bb71c0 100644
--- a/core/apps/embeddedkonsole/main.cpp
+++ b/core/apps/embeddedkonsole/main.cpp
@@ -32,30 +32,31 @@
32 32
33/* --| main |------------------------------------------------------ */ 33/* --| main |------------------------------------------------------ */
34int main(int argc, char* argv[]) 34int main(int argc, char* argv[])
35{ 35{
36 setuid(getuid()); setgid(getgid()); // drop privileges 36 setuid(getuid()); setgid(getgid()); // drop privileges
37 37
38 QPEApplication a( argc, argv ); 38 QPEApplication a( argc, argv );
39 39
40#ifdef FAKE_CTRL_AND_ALT 40#ifdef FAKE_CTRL_AND_ALT
41 qDebug("Fake Ctrl and Alt defined"); 41 qDebug("Fake Ctrl and Alt defined");
42 QPEApplication::grabKeyboard(); // for CTRL and ALT 42 QPEApplication::grabKeyboard(); // for CTRL and ALT
43#endif 43#endif
44 44
45 QStrList tmp; 45 QStrList tmp;
46 const char* shell = getenv("SHELL"); 46 const char* shell = getenv("SHELL");
47 if (shell == NULL || *shell == '\0') 47 if (shell == NULL || *shell == '\0')
48 shell = "/bin/sh"; 48 shell = "/bin/sh";
49 49
50 // sh is completely broken on familiar. Let's try to get something better 50 // sh is completely broken on familiar. Let's try to get something better
51 if ( qstrcmp( shell, "/bin/shell" ) == 0 && QFile::exists( "/bin/bash" ) ) 51 if ( qstrcmp( shell, "/bin/shell" ) == 0 && QFile::exists( "/bin/bash" ) )
52 shell = "/bin/bash"; 52 shell = "/bin/bash";
53 53
54 putenv((char*)"COLORTERM="); // to trigger mc's color detection 54 putenv((char*)"COLORTERM="); // to trigger mc's color detection
55 55
56 tmp.insert(0,"-"); // we want a login shell
56 Konsole m( "test", shell, tmp, TRUE ); 57 Konsole m( "test", shell, tmp, TRUE );
57 m.setCaption( Konsole::tr("Terminal") ); 58 m.setCaption( Konsole::tr("Terminal") );
58 a.showMainWidget( &m ); 59 a.showMainWidget( &m );
59 60
60 return a.exec(); 61 return a.exec();
61} 62}