Index: actions.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/actions.inc,v
retrieving revision 1.34
diff -u -r1.34 actions.inc
--- actions.inc	18 Oct 2009 06:56:23 -0000	1.34
+++ actions.inc	4 Jan 2010 12:42:12 -0000
@@ -178,12 +178,18 @@
  *   array with keys 'callback', 'label', 'type' and 'configurable'.
  */
 function actions_get_all_actions() {
-  $actions = db_query("SELECT aid, type, callback, parameters, label FROM {actions}")->fetchAllAssoc('aid', PDO::FETCH_ASSOC);
-  foreach ($actions as &$action) {
-    $action['configurable'] = (bool) $action['parameters'];
-    unset($action['parameters']);
-    unset($action['aid']);
-  }
+  $actions = &drupal_static(__FUNCTION__, array());
+  if (count($actions)) {
+    return $actions;
+  }
+  else {
+    $actions = db_query("SELECT aid, type, callback, parameters, label FROM {actions}")->fetchAllAssoc('aid', PDO::FETCH_ASSOC);
+    foreach ($actions as &$action) {
+      $action['configurable'] = (bool) $action['parameters'];
+      unset($action['parameters']);
+      unset($action['aid']);
+    }
+  }	
   return $actions;
 }
 

