diff --git a/modules/mail_edit.rules.inc b/modules/mail_edit.rules.inc
index 7a466cf..cae909a 100644
--- a/modules/mail_edit.rules.inc
+++ b/modules/mail_edit.rules.inc
@@ -11,7 +11,17 @@
 function rules_mailkeys() {
   $mail_keys = array();
   // Load all rules to detect mail actions.
-  $rules = rules_get_components(FALSE, 'action');
+  $cache = rules_get_cache();
+  $query = new EntityFieldQuery('rules_config');
+  $rules_ids = $query
+    ->entityCondition('entity_type', 'rules_config')
+    ->propertyCondition('plugin', array('reaction rule') + array_keys(rules_filter_array($cache['plugin_info'], 'component', TRUE)))
+    ->addMetaData('account', user_load(1))
+    ->execute();
+  $rules = array();
+  if (!empty($rules_ids['rules_config'])) {
+    $rules = rules_config_load_multiple(array_keys($rules_ids['rules_config']));
+  }
   foreach ($rules as $rule) {
     foreach ($rule as $element) {
       if ($element instanceof RulesAction && in_array($element->getElementName(), _rules_mail_edit_supported_actions())) {
