(bug 37643) Ensure a session is created when necessary for Captcha
authorBrad Jorsch <anomie.wikipedia@gmail.com>
Sat, 16 Jun 2012 02:24:36 +0000 (22:24 -0400)
committerGerrit Code Review <gerrit@wikimedia.org>
Fri, 28 Sep 2012 00:37:03 +0000 (00:37 +0000)
If the captcha data is going to be stored in the session, make sure the
session has actually been started.

Change-Id: Ia5eefdf738fad3fdbd305f1b3ce80dc86c66efe4

CaptchaStore.php

index 3ab00b38991c11acdad99d76b640d336165cb7d8..a54db97f8250593d77c46ac180fca074bb80f833 100644 (file)
@@ -59,6 +59,13 @@ abstract class CaptchaStore {
 
 class CaptchaSessionStore extends CaptchaStore {
 
+       protected function __construct() {
+               // Make sure the session is started
+               if ( session_id() === '' ) {
+                       wfSetupSession();
+               }
+       }
+
        function store( $index, $info ) {
                $_SESSION['captcha' . $info['index']] = $info;
        }