summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--noncore/settings/networksettings/wlan/wlanimp.cpp25
1 files changed, 13 insertions, 12 deletions
diff --git a/noncore/settings/networksettings/wlan/wlanimp.cpp b/noncore/settings/networksettings/wlan/wlanimp.cpp
index 1782c22..db03266 100644
--- a/noncore/settings/networksettings/wlan/wlanimp.cpp
+++ b/noncore/settings/networksettings/wlan/wlanimp.cpp
@@ -14,7 +14,8 @@
#include <qcombobox.h>
/* system() */
-#include <stdlib.h>
+//#include <stdlib.h>
+#include <opie/oprocess.h>
#define WIRELESS_OPTS "/etc/pcmcia/wireless.opts"
@@ -225,19 +226,19 @@ void WLANImp::accept(){
if(!interfaceSetup->saveChanges())
return;
- // Restart the device now that the settings have changed
- QString initpath;
- if( QDir("/etc/rc.d/init.d").exists() )
- initpath = "/etc/rc.d/init.d";
- else if( QDir("/etc/init.d").exists() )
- initpath = "/etc/init.d";
+ OProcess insert;
+// OProcess eject;
- // It would be kinda cool if we didn't have to do this and could just to ifup/down
+ insert << "sh -c \"cardctl insert && cardctl eject\"";
+// eject << "cardctl eject";
- if( initpath )
- system(QString("%1/pcmcia stop").arg(initpath));
- if( initpath )
- system(QString("%1/pcmcia start").arg(initpath));
+// if (!eject.start(OProcess::Block, OProcess::NoCommunication) ) {
+// qWarning("could not start cardctl eject");
+// }
+
+ if (!insert.start(OProcess::DontCare, OProcess::NoCommunication) ) {
+ qWarning("could not start cardctl insert");
+ }
// Close out the dialog
QDialog::accept();