Commit dfef9f15 authored by webchick's avatar webchick

Issue #898634 by catch, alex_b, chx: Fixed install_drupal(): call to...

Issue #898634 by catch, alex_b, chx: Fixed install_drupal(): call to menu-touching functions results in SQL syntax error.
parent 759acf4c
......@@ -431,6 +431,11 @@ function menu_get_item($path = NULL, $router_item = NULL) {
$router_items[$path] = $router_item;
}
if (!isset($router_items[$path])) {
// Rebuild if we know it's needed, or if the menu masks are missing which
// occurs rarely, likely due to a race condition of multiple rebuilds.
if (variable_get('menu_rebuild_needed', FALSE) || !variable_get('menu_masks', array())) {
menu_rebuild();
}
$original_map = arg(NULL, $path);
// Since there is no limit to the length of $path, use a hash to keep it
......@@ -490,11 +495,6 @@ function menu_execute_active_handler($path = NULL, $deliver = TRUE) {
// Only continue if the site status is not set.
if ($page_callback_result == MENU_SITE_ONLINE) {
// Rebuild if we know it's needed, or if the menu masks are missing which
// occurs rarely, likely due to a race condition of multiple rebuilds.
if (variable_get('menu_rebuild_needed', FALSE) || !variable_get('menu_masks', array())) {
menu_rebuild();
}
if ($router_item = menu_get_item($path)) {
if ($router_item['access']) {
if ($router_item['include_file']) {
......
......@@ -369,6 +369,14 @@ class MenuRouterTestCase extends DrupalWebTestCase {
$this->assertEqual($link['plid'], $plid, t('%path plid @link_plid is equal to @plid.', array('%path' => $link['router_path'], '@link_plid' => $link['plid'], '@plid' => $plid)));
}
/**
* Test menu_get_item() with empty ancestors.
*/
function testMenuGetItemNoAncestors() {
variable_set('menu_masks', array());
$this->drupalGet('');
}
/**
* Test menu_set_item().
*/
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment