Zend_Session installs an error handler to catch any errors triggered by session_start, and then rethrows them as an exception if it caught any. However, it catches all errors (mask set to E_ALL)
This causes problems when session_start writes NOTICE level errors which probably do not signify a session_start problem.
I'd propose changing the set_error_handler call:
set_error_handler(array('Zend_Session_Exception', 'handleSessionStartError'), E_ALL);
to
set_error_handler(array('Zend_Session_Exception', 'handleSessionStartError'), E_ALL & ~E_NOTICE);
Not sure what version this is, but the RCS tags at the top say:
- @version $Id: Session.php 5500 2007-06-29 14:39:50Z darby $
- @since Preview Release 0.2