summaryrefslogtreecommitdiff
authorzecke <zecke>2004-10-10 16:43:49 (UTC)
committer zecke <zecke>2004-10-10 16:43:49 (UTC)
commit81133e613b12ca0b5fa4aa03c0a3441f1e41b1ad (patch) (side-by-side diff)
tree897c5742c1e5ba8444ef4807ad6b64c62287e351
parent96e6046ac26725836d38832a6e3a491351deeb53 (diff)
downloadopie-81133e613b12ca0b5fa4aa03c0a3441f1e41b1ad.zip
opie-81133e613b12ca0b5fa4aa03c0a3441f1e41b1ad.tar.gz
opie-81133e613b12ca0b5fa4aa03c0a3441f1e41b1ad.tar.bz2
Do not 'spawn' a shell this way. Use OProcess::setUseShell if you really
need to start the command via a shell. These scripts should be marked as executable and have !#/bin/sh in the header, this should be enough for the kernel to launch them via sh.
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--noncore/apps/opie-console/fixit.cpp10
1 files changed, 3 insertions, 7 deletions
diff --git a/noncore/apps/opie-console/fixit.cpp b/noncore/apps/opie-console/fixit.cpp
index 5ac7673..57dba4c 100644
--- a/noncore/apps/opie-console/fixit.cpp
+++ b/noncore/apps/opie-console/fixit.cpp
@@ -36,63 +36,59 @@ FixIt::FixIt() : QObject() {
""
"# Specify program to run on ttyS0"
"s0:24:respawn:/sbin/getty 9600 ttyS0"
"#pd:5:respawn:/etc/sync/serialctl"
""
"# Specify program to run on tty1"
"1:2:respawn:/sbin/getty 9600 tty1"
"ln:345:respawn:survive -l 6 /sbin/launch"
"#qt:5:respawn:/sbin/qt"
""
"# collie sp."
"sy::respawn:/sbin/shsync\n";
}
/*
* the retail Zaurus is broken in many ways
* one is that pppd is listening on our port...
* we've to stop it from that and then do kill(SIGHUP,1);
*/
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
OProcess m_kill;
- m_kill << "sh";
- m_kill << "-c";
- m_kill << QString(QPEApplication::qpeDir() + "/share/opie-console/sl6000_embedix_kill_0_1.sh");
+ 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( tr("Fixing up Embedix"));
}
#endif
}
void FixIt::breakIt() {
#ifdef EAST
OProcess m_restart;
- m_restart << "sh";
- m_restart << "-c";
- m_restart << QString(QPEApplication::qpeDir() + "/share/opie-console/sl6000_embedix_restart_0_1.sh");
+ m_restart << QPEApplication::qpeDir() + "/share/opie-console/sl6000_embedix_restart_0_1.sh";
- if ( !m_restart.start() ) {
+ if ( !m_restart.start(OProcess::DontCare,OProcess::NoCommunication) ) {
owarn << "could not execute restart script" << oendl;
}
#endif
}
#endif