This is a bug introduced by the menu API improvement patch at http://drupal.org/node/39430 (which I wrote). The problem is that the new menu_get_item() function is retaining a static variable cache of the menu, and that this cache is not getting reset when it should be. It is reset when menu_rebuild() is called, but not when a menu rebuild occurs through menu_get_menu().
Attached patch resets the menu_get_item() cache when menu_get_menu() runs a rebuild. Without this patch applied, a number of things (e.g. breadcrumbs, local tasks, menu block links) are completely broken, when viewing any page that has its menu item user-defined or customized through the menu module.
Comment | File | Size | Author |
---|---|---|---|
menu_clear_cache.patch | 613 bytes | Jaza | |
Comments
Comment #1
moshe weitzman CreditAttribution: moshe weitzman commentedI tested the patch and it didn't seem to break anything. jaza knows much more than i do about this ...
Comment #2
Dries CreditAttribution: Dries commentedCommitted to HEAD. Thanks.
Comment #3
Wesley Tanaka CreditAttribution: Wesley Tanaka commentedthis patch introduced this regression: http://drupal.org/node/46184
Comment #4
(not verified) CreditAttribution: commented