Bug #53141 [Fbk->Opn]: autoload misbehaves if called from closing session
Edit report at http://bugs.php.net/bug.php?id=53141&edit=1
ID: 53141
User updated by: ladislav at marek dot su
Reported by: ladislav at marek dot su
Summary: autoload misbehaves if called from closing session
-Status: Feedback
+Status: Open
Type: Bug
Package: SPL related
Operating System: GNU Linux
PHP Version: 5.3SVN-2010-10-23 (SVN)
Block user comment: N
New Comment:
I updated PHP from the SVN (rev 304664). With PHP compiled only with
"--with-config-file-path=/etc/php" script runs as
expected, but fails with configure options:
--with-config-file-path=/etc/php --with-openssl --with-kerberos
--with-zlib --enable-bcmath --with-bz2 --with-curl --with-
curlwrappers --enable-dba --enable-ftp --with-gd
--with-jpeg-dir=/usr/include --with-png-dir=/usr/include --with-zlib-
dir=/usr/include --with-xpm-dir=/usr/include
--with-freetype-dir=/usr/lib --enable-gd-native-ttf --with-gettext
--with-mhash
--with-imap --with-imap-ssl --with-ldap --enable-mbstring --with-mcrypt
--with-mysql=mysqlnd --with-mysqli=mysqlnd --with-
pdo-mysql=mysqlnd --with-pdo-pgsql --with-pgsql --enable-shmop
--enable-soap --enable-sockets --enable-sqlite-utf8 --enable-
sysvmsg --with-tidy --with-xmlrpc --with-xsl --enable-zip --enable-intl
--enable-fpm
Previous Comments:
------------------------------------------------------------------------
[2010-10-23 16:55:02] felipe@php.net
I got the expected result when testing on the 5.3 SVN version. Are you
actually using the lastest SVN version?
------------------------------------------------------------------------
[2010-10-23 10:36:09] ladislav at marek dot su
Description:
------------
SPL autoload triggers fatal error if is called from currently closing
session.
With __autoload function scripts works fine.
Test script:
---------------
spl_autoload_register(function ($class) {
var_dump("Loading $class");
eval('class Bar {}');
});
class Foo
{
function __sleep()
{
new Bar;
return array();
}
}
session_start();
$_SESSION['foo'] = new Foo;
Expected result:
----------------
string(11) "Loading Bar"
Actual result:
--------------
Fatal error: spl_autoload(): Class Bar could not be loaded in
/var/www/hosts/tests.l/index.php on line 14
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/bug.php?id=53141&edit=1
Thread (10 messages)