diff --git a/includes/export.inc b/includes/export.inc
index 84c0810..4ae644d 100644
--- a/includes/export.inc
+++ b/includes/export.inc
@@ -188,17 +188,29 @@ function ctools_export_load_object($table, $type = 'all', $args = array()) {
  * @param $table
  *   String that is the name of a table. If not defined, all static caches in
  *   ctools_export_load_object() will be reset.
+ *
+ * @param $reset_default
+ *   Set to TRUE to default objects in table.
  */
-function ctools_export_load_object_reset($table = NULL) {
+function ctools_export_load_object_reset($table = NULL, $reset_default = FALSE) {
   if (empty($table)) {
     ctools_static_reset('ctools_export_load_object');
     ctools_static_reset('ctools_export_load_object_all');
+
+    if ($reset_default) {
+      ctools_static_reset('_ctools_export_get_defaults');
+    }
   }
   else {
     $cache = &ctools_static('ctools_export_load_object');
     $cached_database = &ctools_static('ctools_export_load_object_all');
     unset($cache[$table]);
     unset($cached_database[$table]);
+
+    if ($reset_default) {
+      $cache_default =&ctools_static('_ctools_export_get_defaults');
+      unset($cache_default[$table]);
+    }
   }
 }
 
@@ -247,7 +259,7 @@ function ctools_get_default_object($table, $name) {
  * to get default objects.
  */
 function _ctools_export_get_defaults($table, $export) {
-  static $cache = array();
+  $cache = &ctools_static(__FUNCTION__);
 
   if (!isset($cache[$table])) {
     $cache[$table] = array();
