make sure that a crashing module can't lead to a reboot-loop
authorMichael Gernoth <michael@gernoth.net>
Fri, 20 May 2011 22:54:34 +0000 (00:54 +0200)
committerMichael Gernoth <michael@gernoth.net>
Fri, 20 May 2011 22:54:34 +0000 (00:54 +0200)
MS2Debounce/src/de/rmdir/ms2debounce/DebounceModuleHelper.java

index 93fd221..8dda57a 100644 (file)
@@ -30,7 +30,12 @@ public class DebounceModuleHelper
 
                extractModule();
 
 
                extractModule();
 
-               // FIXME: Read settings from database...
+               SharedPreferences settings = ctx.getSharedPreferences(PREFS_NAME, Context.MODE_PRIVATE);
+               SharedPreferences.Editor editor = settings.edit();
+               if (is_safe_to_load()) {
+                       editor.putBoolean("safe_to_load", false);
+                       editor.commit();
+               }
 
                try {
                        Process insmod = Runtime.getRuntime().exec(new String[]{"su","-c","/system/bin/insmod " + debounce_ko + " debounce_delay=" + delay});
 
                try {
                        Process insmod = Runtime.getRuntime().exec(new String[]{"su","-c","/system/bin/insmod " + debounce_ko + " debounce_delay=" + delay});
@@ -44,12 +49,8 @@ public class DebounceModuleHelper
                }
 
                /* Module was obviously loaded, so it is safe to load on boot */
                }
 
                /* Module was obviously loaded, so it is safe to load on boot */
-               if (!is_safe_to_load()) {
-                       SharedPreferences settings = ctx.getSharedPreferences(PREFS_NAME, Context.MODE_PRIVATE);
-                       SharedPreferences.Editor editor = settings.edit();
-                       editor.putBoolean("safe_to_load", true);
-                       editor.commit();
-               }
+               editor.putBoolean("safe_to_load", true);
+               editor.commit();
        }
 
        public synchronized void unloadModule() {
        }
 
        public synchronized void unloadModule() {
Impressum, Datenschutz