Diffstat (limited to 'core/apps/embeddedkonsole/main.cpp') (more/less context) (show whitespace changes)
-rw-r--r-- | core/apps/embeddedkonsole/main.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/core/apps/embeddedkonsole/main.cpp b/core/apps/embeddedkonsole/main.cpp index 3ebe4c7..95adab8 100644 --- a/core/apps/embeddedkonsole/main.cpp +++ b/core/apps/embeddedkonsole/main.cpp | |||
@@ -30,35 +30,38 @@ | |||
30 | #include <stdlib.h> | 30 | #include <stdlib.h> |
31 | 31 | ||
32 | 32 | ||
33 | /* --| main |------------------------------------------------------ */ | 33 | /* --| main |------------------------------------------------------ */ |
34 | int main(int argc, char* argv[]) | 34 | int main(int argc, char* argv[]) |
35 | { | 35 | { |
36 | setuid(getuid()); setgid(getgid()); // drop privileges | 36 | if(setuid(getuid()) !=0) qDebug("setuid failed"); |
37 | if(setgid(getgid()) != 0) qDebug("setgid failed"); // drop privileges | ||
37 | 38 | ||
38 | QPEApplication a( argc, argv ); | 39 | QPEApplication a( argc, argv ); |
39 | 40 | ||
40 | QPEApplication::grabKeyboard(); // for CTRL and ALT | 41 | QPEApplication::grabKeyboard(); // for CTRL and ALT |
41 | 42 | ||
42 | qDebug("keyboard grabbed"); | 43 | qDebug("keyboard grabbed"); |
43 | #ifdef FAKE_CTRL_AND_ALT | 44 | #ifdef FAKE_CTRL_AND_ALT |
44 | qDebug("Fake Ctrl and Alt defined"); | 45 | qDebug("Fake Ctrl and Alt defined"); |
45 | QPEApplication::grabKeyboard(); // for CTRL and ALT | 46 | // QPEApplication::grabKeyboard(); // for CTRL and ALT |
46 | #endif | 47 | #endif |
47 | 48 | ||
48 | QStrList tmp; | 49 | QStrList tmp; |
49 | const char* shell = getenv("SHELL"); | 50 | const char* shell = getenv("SHELL"); |
50 | if (shell == NULL || *shell == '\0') | 51 | if (shell == NULL || *shell == '\0') |
51 | shell = "/bin/sh"; | 52 | shell = "/bin/sh"; |
52 | 53 | ||
53 | // sh is completely broken on familiar. Let's try to get something better | 54 | // sh is completely broken on familiar. Let's try to get something better |
54 | if ( qstrcmp( shell, "/bin/shell" ) == 0 && QFile::exists( "/bin/bash" ) ) | 55 | if ( qstrcmp( shell, "/bin/shell" ) == 0 && QFile::exists( "/bin/bash" ) ) |
55 | shell = "/bin/bash"; | 56 | shell = "/bin/bash"; |
56 | 57 | ||
57 | putenv((char*)"COLORTERM="); // to trigger mc's color detection | 58 | if( putenv((char*)"COLORTERM=") !=0) |
59 | qDebug("putenv failed"); // to trigger mc's color detection | ||
58 | 60 | ||
59 | Konsole m( "test", shell, tmp, TRUE ); | 61 | Konsole m( "test", shell, tmp, TRUE ); |
60 | m.setCaption( Konsole::tr("Terminal") ); | 62 | m.setCaption( Konsole::tr("Terminal") ); |
61 | a.showMainWidget( &m ); | 63 | a.showMainWidget( &m ); |
62 | 64 | ||
63 | return a.exec(); | 65 | return a.exec(); |
64 | } | 66 | } |
67 | |||