Fixed Race conditional when unignoring can cause unexpected error

Xon

Well-known member
Affected version
2.1.3
Code:
Error: Call to a member function hasErrors() on null
src/XF/Pub/Controller/Member.php:498

Stack trace
#0 src/XF/Mvc/Dispatcher.php(321): XF\Pub\Controller\Member->actionIgnore(Object(XF\Mvc\ParameterBag))
#1 src/XF/Mvc/Dispatcher.php(244): XF\Mvc\Dispatcher->dispatchClass('XF:Member', 'Ignore', Object(XF\Mvc\RouteMatch), Object(SV\ElasticSearchEssentials\XF\Pub\Controller\Member), NULL)
#2 src/XF/Mvc/Dispatcher.php(100): XF\Mvc\Dispatcher->dispatchFromMatch(Object(XF\Mvc\RouteMatch), Object(SV\ElasticSearchEssentials\XF\Pub\Controller\Member), NULL)
#3 src/XF/Mvc/Dispatcher.php(50): XF\Mvc\Dispatcher->dispatchLoop(Object(XF\Mvc\RouteMatch))
#4 src/XF/App.php(2178): XF\Mvc\Dispatcher->run()
#5 src/XF.php(390): XF\App->run()
#6 index.php(20): XF::runApp('XF\\Pub\\App')
#7 {main}

The problem is unignore can return null if the user has already been unignored, and hasErrors is called unconditionally on the return result
 
Top Bottom