CRITICAL SEVERITY
Issue #1: Authentication Popup Fatal Error
| GitHub Issue | #39077 |
| Discovered | 2024-08-15 |
| Severity | Critical |
| Affects | 2.4.7-p1, 2.4.7-p2, 2.4.7-p3 |
| Fixed In | 2.4.7-p4 (expected) |
| Area | Frontend authentication |
Symptom
Fatal error when authentication popup appears on frontend:
Error: Call to a member function isGlobalScopeEnabled() on null
File: vendor/magento/module-customer/view/frontend/templates/form/authentication-popup.phtml
Customer cannot log in via the popup, blocks checkout and add-to-cart for logged-in users.
Cause
Template file authentication-popup.phtml calls isGlobalScopeEnabled() on a potentially null object when the configuration helper is not properly initialized.
Root Cause: Race condition in block initialization when Full Page Cache serves partial content. The block's _toHtml() method executes before dependencies are fully injected.
Impact
- → Business: Customers cannot log in, abandoned carts increase
- → Conversion Rate: Up to 15% drop in conversion when popup login is primary method
- → Support Tickets: High volume of "cannot log in" complaints
- → Affected Users: All customers on affected versions attempting popup login
Workaround #1: Template Override
File: app/design/frontend/[Vendor]/[Theme]/Magento_Customer/templates/form/authentication-popup.phtml
<?php
/** @var \Magento\Customer\Block\Form\Login\Info $block */
$config = $block->getConfig();
$isGlobalScope = $config ? $config->isGlobalScopeEnabled() : false;
?>
<?php if ($isGlobalScope): ?>
<!-- Safe execution with null check -->
<?php endif; ?>
References
- → GitHub Issue #39077
- → Magento Community Engineering Slack Discussion