A check is added to JSessionStorage::getInstance() to ensure the session store that is about to be instantiated is supported on the platform and will gracefully exit the app if not.
Testing Instructions
Set your configuration's session_handler value to use a session store that isn't supported on your platform. Pre-patch it will most likely lead to a fatal error or some other kind of Exception/Throwable depending on your setup; post-patch you should get a white page telling you the session store isn't supported.
test 1: public $session_handler = 'memcache';
test 2: public $session_handler = 'sessiony';
Before patch: blank page with
Test 1: Error displaying the error page: Application Instantiation Error: Memcache Extension is not available
Test 2: Unable to load session storage class: sessiony
After patch: blank page with
Test 1: The memcache Session Storage is not supported on this platform.
Test 2: Unable to load session storage class: sessiony
No error page, justa blank page with those messages. Is this how it is supossed to work?
Yes, at least that's how the code's commented. If you want to try and change it to throwing Exceptions and making sure it doesn't break, you're welcome to, but the way I read the comment it was a purposeful design decision (which may not even be relevant anymore, especially as the session wouldn't even be started at this point).
andrepereiradasilva
- test_item
- 8 May 2016
- Tested successfully
Made two tests: Edited configuration.php manually
test 1:
public $session_handler = 'memcache';
test 2:
public $session_handler = 'sessiony';
Before patch: blank page with
Test 1: Error displaying the error page: Application Instantiation Error: Memcache Extension is not available
Test 2: Unable to load session storage class: sessiony
After patch: blank page with
Test 1: The memcache Session Storage is not supported on this platform.
Test 2: Unable to load session storage class: sessiony
No error page, justa blank page with those messages. Is this how it is supossed to work?