It's possible that Node Access Fixer will attempt to run an access callback defined by a disabled module, resulting in unpredictable behavior, possibly causing Access Denied errors where access should be allowed, or allowing access where it should be denied.

This is caused by a phenomenon (not understood by me) in which Drupal apparently fails -- under some circumstances -- to clear the cache when disabling a module. This matters because Node Access Fixer builds its list of access callbacks when rebuilding the menu cache. If it is expecting to process an access callback for a module, and if that module can be disabled without clearing the menu cache, Node Access Fixer will be calling a non-existent function.

This is fixed with a simple patch, to be released momentarily.

Comments

TwoMice’s picture

Status: Active » Fixed
StatusFileSize
new1.74 KB

This patch fixes the problem by ignoring any callbacks for non-existent functions. Slated for release in 6.x-1.0-beta2.

TwoMice’s picture

Status: Fixed » Closed (fixed)