Support for Drupal 7 is ending on 5 January 2025—it’s time to migrate to Drupal 10! Learn about the many benefits of Drupal 10 and find migration tools in our resource center.
The following, done on a brand new install of today's 8.0.x Drupal, causes a crash with the error:
Fatal error: Call to a member function cacheUntilEntityChanges() on boolean in /var/www/drupal/core/modules/block/src/BlockAccessControlHandler.php on line 139
- I do a fresh install of Drupal 8 using a Vagrant virtual (http://www.drupalvm.com/)
- I log into the virtual, cd /var/www/drupal, and install masquerade with "drush dl masquerade; drush en masquerade", which installs the version packaged on 2015-08-18
- I go to admin/structure/block, and add the Masquerade block to the "Sidebar First" region.
- I go to the front page, and I get a white screen with the error above.
I can supply a full stack-trace by enabling xdebug, but I suspect that you'll find this pretty easy to reproduce.
Comment | File | Size | Author |
---|---|---|---|
#2 | issue-2575707.patch | 998 bytes | Torenware |
Comments
Comment #2
Torenware CreditAttribution: Torenware as a volunteer and commentedTurned out to be fairly easy to fix. Access routines now return an object, and not a boolean.
Comment #3
andypostPatch makes sense as hotfix!
In long run we need to provide cachability of that access check
Comment #5
andypostThanx, fixed with stub for caching #2448699: Implement caching for the masquerade block and links with a 'masquerade' cache context
Marked as duplicate #2565507: blockAccess needs to return AccessResult
Comment #6
andypost