Index: panels_views.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/panels/panels_views/Attic/panels_views.module,v
retrieving revision 1.1.2.7
diff -u -w -F^f -r1.1.2.7 panels_views.module
--- panels_views.module	8 Jan 2008 18:56:28 -0000	1.1.2.7
+++ panels_views.module	3 Feb 2008 21:10:58 -0000
@@ -1285,6 +1285,8 @@ function panels_views_save($pv) {
  * Load a panel view from the database.
  */
 function panels_views_load($name) {
+  static $panels_views = array();
+  if (empty($panels_views[$name])) {
   $pv = db_fetch_object(db_query("SELECT * FROM {panels_views} WHERE name = '%s'", $name));
   if (empty($pv)) {
     $defaults = panels_views_default_panels();
@@ -1295,25 +1297,30 @@ function panels_views_load($name) {
       if (isset($status[$pv->name])) {
         $pv->disabled = $status[$pv->name];
       }
+        $panels_views[$name] = $pv;
       return $pv;
     }
+      $panels_views[$name] == 'NULL';
     return;
   }
 
   $names = panels_views_pane_fields();
-  foreach ($names as $name => $data) {
+    foreach ($names as $key => $data) {
     if (!empty($data['serialize'])) {
-      $pv->$name = unserialize($pv->$name);
+        $pv->$key = unserialize($pv->$key);
     }
   }
-
-  return $pv;
+    $panels_views[$name] = $pv;
+  }
+  return $panels_views[$name] == 'NULL' ? NULL : $panels_views[$name];
 }
 
 /**
  * Load all panel views.
  */
 function panels_views_load_all() {
+  static $panel_views;
+  if (empty($panel_views)) {
   $panel_views = array();
   $names = panels_views_pane_fields();
   $result = db_query("SELECT * FROM {panels_views}");
@@ -1345,6 +1352,7 @@ function panels_views_load_all() {
       $panel_views[$pv->name] = $pv;
     }
   }
+  }
   return $panel_views;
 }
 
