summaryrefslogtreecommitdiff
path: root/includes/menu.inc
diff options
context:
space:
mode:
authorDries Buytaert <dries@buytaert.net>2010-04-26 14:06:23 +0000
committerDries Buytaert <dries@buytaert.net>2010-04-26 14:06:23 +0000
commitb94665f5aec34875c61ac28db847b104026b429e (patch)
tree4234d347f53bb837220c7405de1d476f077039d1 /includes/menu.inc
parent40c1805350a1937da198e878720e411de059120d (diff)
downloadbrdo-b94665f5aec34875c61ac28db847b104026b429e.tar.gz
brdo-b94665f5aec34875c61ac28db847b104026b429e.tar.bz2
- Patch #688334 by stella, BTMash, carlos8f, chx: fixed file inheritance is broken.
Diffstat (limited to 'includes/menu.inc')
-rw-r--r--includes/menu.inc9
1 files changed, 6 insertions, 3 deletions
diff --git a/includes/menu.inc b/includes/menu.inc
index 39f7dddad..8c2255067 100644
--- a/includes/menu.inc
+++ b/includes/menu.inc
@@ -3166,12 +3166,15 @@ function _menu_router_build($callbacks) {
if (!isset($item['page arguments']) && isset($parent['page arguments'])) {
$item['page arguments'] = $parent['page arguments'];
}
- if (!isset($item['file']) && isset($parent['file'])) {
- $item['file'] = $parent['file'];
- }
if (!isset($item['file path']) && isset($parent['file path'])) {
$item['file path'] = $parent['file path'];
}
+ if (!isset($item['file']) && isset($parent['file'])) {
+ $item['file'] = $parent['file'];
+ if (empty($item['file path']) && isset($item['module']) && isset($parent['module']) && $item['module'] != $parent['module']) {
+ $item['file path'] = drupal_get_path('module', $parent['module']);
+ }
+ }
}
// Same for delivery callbacks.
if (!isset($item['delivery callback']) && isset($parent['delivery callback'])) {