diff --git a/includes/ckeditor.features.inc b/includes/ckeditor.features.inc
index c68c5a9..793c1cf 100644
--- a/includes/ckeditor.features.inc
+++ b/includes/ckeditor.features.inc
@@ -101,18 +101,18 @@ function ckeditor_profile_features_revert($module) {
       db_query("DELETE FROM {ckeditor_settings} WHERE name = :name", array(':name' => $name));
       db_query("INSERT INTO {ckeditor_settings} (name, settings) VALUES(:name, :settings)", array(':name' => $name, ':settings' => serialize($profile['settings'])));
 
-      // Restore the profile roles
-      foreach ($profile["input_formats"] as $input_format => $input_format_name) {
-        if (isset($input_formats[$input_format])) {
+      if (empty($profile["input_formats"])) {
+        // Remove input format if none is specified
+        db_query("DELETE FROM {ckeditor_input_format} WHERE name = :name", array(':name' => $name));
+      }
+      else {
+        // Restore the profile roles
+        foreach ($profile["input_formats"] as $input_format => $input_format_name) {
           if (!db_query("SELECT name FROM {ckeditor_input_format} WHERE format = :format AND name = :name", array(':name' => $name, ':format' => $input_format))->fetchField()) {
             db_query("INSERT INTO {ckeditor_input_format} (name, format) VALUES(:name, :format)", array(':name' => $name, ':format' => $input_format));
           }
         }
-        else {
-          // Make sure they don't have access
-          db_query("DELETE FROM {ckeditor_input_format} WHERE format = :format AND name = :name", array(':name' => $name, ':format' => $input_format));
-        }
       }
     }
   }
-}
\ No newline at end of file
+}
