X-Git-Url: https://git.zerfleddert.de/cgi-bin/gitweb.cgi/ms2-fixes/blobdiff_plain/62c7d45fd52642c01ef4137988f1b2a3c56600ea..a7c1cd77598c83fe14577cb0393e76ee7d29645c:/MS2Debounce/src/de/rmdir/ms2debounce/DebounceModuleHelper.java diff --git a/MS2Debounce/src/de/rmdir/ms2debounce/DebounceModuleHelper.java b/MS2Debounce/src/de/rmdir/ms2debounce/DebounceModuleHelper.java index 6234eae..b5310d6 100644 --- a/MS2Debounce/src/de/rmdir/ms2debounce/DebounceModuleHelper.java +++ b/MS2Debounce/src/de/rmdir/ms2debounce/DebounceModuleHelper.java @@ -32,9 +32,13 @@ public class DebounceModuleHelper 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 { @@ -48,7 +52,7 @@ public class DebounceModuleHelper rootcmd.waitFor(); } - public synchronized void _loadModule() { + public synchronized boolean _loadModule() { File debounce_ko = new File(ctx.getFilesDir() + "/debounce.ko"); extractModule(); @@ -61,28 +65,34 @@ public class DebounceModuleHelper } 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() { @@ -138,7 +148,8 @@ public class DebounceModuleHelper fbuf.write((new Integer(value)).toString()); fbuf.close(); - } catch (Exception e) {} + } catch (Exception e) { + } } public synchronized int getDelay() {