From: Michael Gernoth Date: Sun, 28 Oct 2012 11:55:47 +0000 (+0100) Subject: use module included in ROM (when available) X-Git-Url: https://git.zerfleddert.de/cgi-bin/gitweb.cgi/ms2-fixes/commitdiff_plain/b750f7cc72531d334cb93b92448768f846839d23?hp=0c4d887cedf2d981df24dcf7716b283be10e64e6 use module included in ROM (when available) --- diff --git a/MS2Debounce/AndroidManifest.xml b/MS2Debounce/AndroidManifest.xml index d4b5fc9..18daadc 100644 --- a/MS2Debounce/AndroidManifest.xml +++ b/MS2Debounce/AndroidManifest.xml @@ -1,7 +1,7 @@ diff --git a/MS2Debounce/src/de/rmdir/ms2debounce/DebounceModuleHelper.java b/MS2Debounce/src/de/rmdir/ms2debounce/DebounceModuleHelper.java index 2ee5501..fbcc837 100644 --- a/MS2Debounce/src/de/rmdir/ms2debounce/DebounceModuleHelper.java +++ b/MS2Debounce/src/de/rmdir/ms2debounce/DebounceModuleHelper.java @@ -69,9 +69,20 @@ public class DebounceModuleHelper } public synchronized boolean _loadModule() throws NotRootedException,ShellException { - File debounce_ko = new File(ctx.getFilesDir() + "/debounce.ko"); + File insmod = new File("/system/bin/insmod"); + if (!insmod.exists()) { + insmod = new File("/system/xbin/insmod"); + if (!insmod.exists()) { + return false; + } + } - extractModule(); + File debounce_ko = new File("/system/lib/modules/debounce.ko"); + if (!debounce_ko.exists()) { + debounce_ko = new File(ctx.getFilesDir() + "/debounce.ko"); + + extractModule(); + } SharedPreferences settings = ctx.getSharedPreferences(PREFS_NAME, Context.MODE_PRIVATE); SharedPreferences.Editor editor = settings.edit(); @@ -80,7 +91,7 @@ public class DebounceModuleHelper editor.commit(); } - runAsRoot("/system/bin/insmod " + debounce_ko + " || /system/xbin/insmod " + debounce_ko); + runAsRoot(insmod + " " + debounce_ko); if (!isLoaded()) { return false; @@ -98,7 +109,16 @@ public class DebounceModuleHelper } public synchronized void unloadModule() throws NotRootedException,ShellException { - runAsRoot("/system/bin/rmmod debounce || /system/xbin/rmmod debounce"); + File rmmod = new File("/system/bin/rmmod"); + + if (!rmmod.exists()) { + rmmod = new File("/system/xbin/rmmod"); + if (!rmmod.exists()) { + return; + } + } + + runAsRoot(rmmod + " debounce"); } public synchronized boolean isLoaded() {