diff --git a/plugins/views_plugin_display_system.inc b/plugins/views_plugin_display_system.inc
index 079fe48..6018ccb 100644
--- a/plugins/views_plugin_display_system.inc
+++ b/plugins/views_plugin_display_system.inc
@@ -158,25 +158,27 @@ class views_plugin_display_system extends views_plugin_display {
       // Only apply property inheritance to direct children of the parent path.
       $num_child_parts = count(explode('/', $child_path));
       if ($num_parent_parts == $num_child_parts - 1) {
-        $child = &$callbacks[$child_path];
-        // Copy all properties from the original parent that will be replaced
-        // with new values.
-        // This typically resets 'access arguments', etc.
-        $child += array_intersect_key($parent, $items[$path]);
-        // Copy all properties from the original parent, for which the router
-        // system would inherit parent values or fill in default values.
-        // This typically adds back 'file' and other properties defined on the
-        // parent but not on $items[$path]. (The two operations could be
-        // combined with $items[$path] + $defaults, but are separated for
-        // documentation purposes and clarity.)
-        $child += array_intersect_key($parent, $defaults);
-        // Last catch-22, insert new default properties and their default values
-        // for the child, which may not be defined on the original parent.
-        // This typically inserts 'access callback', which can be omitted in
-        // router item definitions and only gets a default of user_access() in
-        // the final _menu_router_build(). Without this, the new access callback
-        // views_access() in $items[$path] would be inherited to all children.
-        $child += $defaults;
+        if (isset($callbacks[$child_path]) && ($callbacks[$child_path]['page callback'] !== 'views_page')) {
+          $child = &$callbacks[$child_path];
+          // Copy all properties from the original parent that will be replaced
+          // with new values.
+          // This typically resets 'access arguments', etc.
+          $child += array_intersect_key($parent, $items[$path]);
+          // Copy all properties from the original parent, for which the router
+          // system would inherit parent values or fill in default values.
+          // This typically adds back 'file' and other properties defined on the
+          // parent but not on $items[$path]. (The two operations could be
+          // combined with $items[$path] + $defaults, but are separated for
+          // documentation purposes and clarity.)
+          $child += array_intersect_key($parent, $defaults);
+          // Last catch-22, insert new default properties and their default values
+          // for the child, which may not be defined on the original parent.
+          // This typically inserts 'access callback', which can be omitted in
+          // router item definitions and only gets a default of user_access() in
+          // the final _menu_router_build(). Without this, the new access callback
+          // views_access() in $items[$path] would be inherited to all children.
+          $child += $defaults;
+        }
       }
     }
     // If the original parent path already existed, copy over its remaining
diff --git a/tests/admin_views.test b/tests/admin_views.test
index db2a00b..164c0e5 100644
--- a/tests/admin_views.test
+++ b/tests/admin_views.test
@@ -86,6 +86,13 @@ class AdminViewsSystemDisplayTestCase extends AdminViewsWebTestCase {
     );
   }
 
+  function setUp() {
+    parent::setUp();
+
+    // Save the default normal view.
+    $this->normalPageView()->save();
+  }
+
   /**
    * Tests proper inheritance of router item properties.
    */
@@ -102,6 +109,64 @@ class AdminViewsSystemDisplayTestCase extends AdminViewsWebTestCase {
       $this->clickLink($link);
       $this->assertResponse(200);
     }
+
+    $this->drupalGet('admin/content/test');
+    // Check the normal view page is working by looking for the title.
+    $this->assertText('admin_views_test_normal');
+  }
+
+  /**
+   * Returns a basic default view.
+   */
+  protected function normalPageView() {
+    $view = new view();
+    $view->name = 'admin_views_test_normal';
+    $view->description = '';
+    $view->tag = 'default';
+    $view->base_table = 'node';
+    $view->human_name = 'admin_views_test_normal';
+    $view->core = 7;
+    $view->api_version = '3.0';
+    $view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */
+
+    /* Display: Master */
+    $handler = $view->new_display('default', 'Master', 'default');
+    $handler->display->display_options['title'] = 'admin_views_test_normal';
+    $handler->display->display_options['use_more_always'] = FALSE;
+    $handler->display->display_options['access']['type'] = 'perm';
+    $handler->display->display_options['cache']['type'] = 'none';
+    $handler->display->display_options['query']['type'] = 'views_query';
+    $handler->display->display_options['exposed_form']['type'] = 'basic';
+    $handler->display->display_options['pager']['type'] = 'full';
+    $handler->display->display_options['pager']['options']['items_per_page'] = '10';
+    $handler->display->display_options['style_plugin'] = 'default';
+    $handler->display->display_options['row_plugin'] = 'node';
+    /* Field: Content: Title */
+    $handler->display->display_options['fields']['title']['id'] = 'title';
+    $handler->display->display_options['fields']['title']['table'] = 'node';
+    $handler->display->display_options['fields']['title']['field'] = 'title';
+    $handler->display->display_options['fields']['title']['label'] = '';
+    $handler->display->display_options['fields']['title']['alter']['word_boundary'] = FALSE;
+    $handler->display->display_options['fields']['title']['alter']['ellipsis'] = FALSE;
+    /* Sort criterion: Content: Post date */
+    $handler->display->display_options['sorts']['created']['id'] = 'created';
+    $handler->display->display_options['sorts']['created']['table'] = 'node';
+    $handler->display->display_options['sorts']['created']['field'] = 'created';
+    $handler->display->display_options['sorts']['created']['order'] = 'DESC';
+    /* Filter criterion: Content: Published */
+    $handler->display->display_options['filters']['status']['id'] = 'status';
+    $handler->display->display_options['filters']['status']['table'] = 'node';
+    $handler->display->display_options['filters']['status']['field'] = 'status';
+    $handler->display->display_options['filters']['status']['value'] = 1;
+    $handler->display->display_options['filters']['status']['group'] = 1;
+    $handler->display->display_options['filters']['status']['expose']['operator'] = FALSE;
+
+    /* Display: Page */
+    $handler = $view->new_display('page', 'Page', 'page');
+    $handler->display->display_options['defaults']['hide_admin_links'] = FALSE;
+    $handler->display->display_options['path'] = 'admin/content/test';
+
+    return $view;
   }
 }
 
