author | harlekin <harlekin> | 2005-01-11 16:09:07 (UTC) |
---|---|---|
committer | harlekin <harlekin> | 2005-01-11 16:09:07 (UTC) |
commit | 0619c844b8a3054c6d6e480ba1c90e3f42e63873 (patch) (side-by-side diff) | |
tree | 0ab4c5572ee7f85cd493a8229978549151f1772c | |
parent | 1833a9079cd7801f333ac3885b447520e44f937f (diff) | |
download | opie-0619c844b8a3054c6d6e480ba1c90e3f42e63873.zip opie-0619c844b8a3054c6d6e480ba1c90e3f42e63873.tar.gz opie-0619c844b8a3054c6d6e480ba1c90e3f42e63873.tar.bz2 |
important change to work arround issues with the real uid handling on sharps newer roms
-rw-r--r-- | noncore/apps/opie-console/fixit.cpp | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/noncore/apps/opie-console/fixit.cpp b/noncore/apps/opie-console/fixit.cpp index f170074..82a0339 100644 --- a/noncore/apps/opie-console/fixit.cpp +++ b/noncore/apps/opie-console/fixit.cpp @@ -1,13 +1,13 @@ - +#include <unistd.h> #include "fixit.h" using namespace Opie::Core; #ifdef FSCKED_DISTRI FixIt::FixIt() { /* the new inittab */ m_file = "#\n# /etc/inittab" "#" "" "# 0 - halt (Do NOT set initdefault to this)" "# 1 - Single user mode" @@ -54,41 +54,42 @@ FixIt::FixIt() { */ void FixIt::fixIt() { #ifndef EAST ::rename("/etc/inittab", QPEApplication::qpeDir() + "etc/inittab" ); QFile file( "/etc/inittab" ); if ( file.open(IO_WriteOnly | IO_Raw ) ) { file.writeBlock(m_file,strlen(m_file) ); } file.close(); ::kill( SIGHUP, 1 ); #else - + setuid(0); OProcess m_kill; m_kill << QPEApplication::qpeDir() + "share/opie-console/sl6000_embedix_kill_0_1.sh"; - + if ( !m_kill.start(OProcess::DontCare,OProcess::NoCommunication) ) { owarn << "could not execute kill script" << oendl; } else { Global::statusMessage( QObject::tr("Fixing up Embedix")); } #endif } void FixIt::breakIt() { #ifdef EAST OProcess m_restart; + m_restart << QPEApplication::qpeDir() + "share/opie-console/sl6000_embedix_restart_0_1.sh"; - - + + if ( !m_restart.start(OProcess::DontCare,OProcess::NoCommunication) ) { owarn << "could not execute restart script" << oendl; } #endif } #endif |