setActiveHigh(getSavedActiveHigh());
}
- public void loadModule() {
- _loadModule();
+ public boolean loadModule() {
+ if (!_loadModule())
+ return false;
+
setAllValues();
+
+ return true;
}
protected void runAsRoot(String command) throws java.io.IOException,java.lang.InterruptedException {
rootcmd.waitFor();
}
- public synchronized void _loadModule() {
+ public synchronized boolean _loadModule() {
File debounce_ko = new File(ctx.getFilesDir() + "/debounce.ko");
extractModule();
}
try {
- runAsRoot("/system/bin/insmod " + debounce_ko);
+ runAsRoot("/system/bin/insmod " + debounce_ko + " || /system/xbin/insmod " + debounce_ko);
} catch (Exception e) {
- return;
+ return false;
}
if (!isLoaded()) {
- return;
+ return false;
}
if (getDelay() < 0) {
- return;
+ return false;
}
/* Module was obviously loaded, so it is safe to load on boot */
editor.putBoolean("safe_to_load", true);
editor.commit();
+
+ return true;
}
- public synchronized void unloadModule() {
+ public synchronized boolean unloadModule() {
try {
- runAsRoot("/system/bin/rmmod debounce");
- } catch (Exception e) {}
+ runAsRoot("/system/bin/rmmod debounce || /system/xbin/rmmod debounce");
+ } catch (Exception e) {
+ return false;
+ }
+
+ return true;
}
public synchronized boolean isLoaded() {
fbuf.write((new Integer(value)).toString());
fbuf.close();
- } catch (Exception e) {}
+ } catch (Exception e) {
+ }
}
public synchronized int getDelay() {