diff --git a/panelizer.module b/panelizer.module
index 3e98ff2..28af410 100644
--- a/panelizer.module
+++ b/panelizer.module
@@ -213,16 +213,13 @@ function panelizer_views_api() {
 }
 
 /**
- * Implements hook_panelizer_defaults().
+ * Implements hook_panelizer_defaults_alter().
  */
-function panelizer_panelizer_defaults() {
-  $items = array();
+function panelizer_panelizer_defaults_alter(&$items) {
   // Delegate.
   foreach (panelizer_get_plugins_with_hook('panelizer_defaults') as $handler) {
     $handler->hook_panelizer_defaults($items);
   }
-
-  return $items;
 }
 
 /**
diff --git a/plugins/entity/PanelizerEntityDefault.class.php b/plugins/entity/PanelizerEntityDefault.class.php
index a6ae614..5f4f73e 100644
--- a/plugins/entity/PanelizerEntityDefault.class.php
+++ b/plugins/entity/PanelizerEntityDefault.class.php
@@ -947,7 +947,7 @@ abstract class PanelizerEntityDefault implements PanelizerEntityInterface {
     foreach ($this->plugin['bundles'] as $bundle => $info) {
       if (!empty($info['status']) && !empty($info['default'])) {
         $panelizer = $this->get_internal_default_panelizer($bundle);
-        if (empty($default_names[$panelizer->name])) {
+        if (empty($default_names[$panelizer->name]) && !isset($panelizers[$panelizer->name])) {
           $panelizers[$panelizer->name] = $panelizer;
         }
       }
