On further testing, this is not a problem until Mahara 15.10. In 1.9 and
1.10, the system works as expected (although it does generating a PHP
warning message about an undefined variable).

To replicate:

1. Add this to your config.php file, to set session timeout to 10 seconds: 
$cfg->session_timeout = 10;
2. Log in to Mahara
3. Count to 10
4. Click on the "Dashboard" link again

Expected result: You should be redirected to the login screen and see "Please 
login again"
Actual result: You get a white screen from Mahara crashing fatally. This is the 
error stack in the logs:

Fatal error:  auth_generate_login_form(): The script tried to execute a
method or access a property of an incomplete object. Please ensure that
the class definition "Pieform" of the object you are trying to
operate on was loaded _before_ unserialize() gets called or provide a
__autoload() function to load the class definition  in
htdocs/auth/lib.php on line 1944

1. {main}() htdocs/index.php:0
2. smarty() htdocs/index.php:88
3. auth_generate_login_form() htdocs/lib/web.php:703


** No longer affects: mahara/1.9

** No longer affects: mahara/1.10

-- 
You received this bug notification because you are a member of Mahara
Contributors, which is subscribed to Mahara.
Matching subscriptions: Subscription for all Mahara Contributors -- please ask 
on #mahara-dev or mahara.org forum before editing or unsubscribing it!
https://bugs.launchpad.net/bugs/1495200

Title:
  White screen when session times out

Status in Mahara:
  Confirmed
Status in Mahara 15.04 series:
  Confirmed
Status in Mahara 15.10 series:
  Confirmed
Status in Mahara 16.04 series:
  Confirmed

Bug description:
  Issue with 15.10

  If you are logged into mahara and leave the site open in a browser for
  some time when you come back and try to navigate somewhere you can end
  up with a white blank screen - on refresh of page all works fine.

  The problem is this:
  PHP Fatal error:  auth_generate_login_form(): The script tried to execute a 
method or access a property of an incomplete object. Please ensure that the 
class definition "Pieform" of the object you are trying to operate on 
was loaded _before_ unserialize() gets called or provide a __autoload() 
function to load the class definition  in 
/home/robertl/htdocs/mahara-devel/mahara/htdocs/auth/lib.php on line 1945

  Which deals with the line:
  return get_login_form_js($SESSION->loginform->build());

  In earlier Mahara you would instead be given (via js) a popup login
  box.

To manage notifications about this bug go to:
https://bugs.launchpad.net/mahara/+bug/1495200/+subscriptions

_______________________________________________
Mailing list: https://launchpad.net/~mahara-contributors
Post to     : mahara-contributors@lists.launchpad.net
Unsubscribe : https://launchpad.net/~mahara-contributors
More help   : https://help.launchpad.net/ListHelp

Reply via email to