cvs: php-src(PHP_5_3) /ext/standard php_incomplete_class.h /ext/standard/tests/serialize incomplete_class.phpt
| From: | Antony Dovgal | Date: | Tue, 16 Sep 2008 14:36:27 +0000 |
| Subject: | cvs: php-src(PHP_5_3) /ext/standard php_incomplete_class.h /ext/standard/tests/serialize incomplete_class.phpt | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-53182@lists.php.net to get a copy of this message | ||
tony2001 Tue Sep 16 14:36:27 2008 UTC
Added files: (Branch: PHP_5_3)
/php-src/ext/standard/tests/serialize incomplete_class.phpt
Modified files:
/php-src/ext/standard php_incomplete_class.h
Log:
MFH
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/php_incomplete_class.h?r1=1.17.2.2.2.1.2.2&r2=1.17.2.2.2.1.2.3&diff_format=u
Index: php-src/ext/standard/php_incomplete_class.h
diff -u php-src/ext/standard/php_incomplete_class.h:1.17.2.2.2.1.2.2
php-src/ext/standard/php_incomplete_class.h:1.17.2.2.2.1.2.3
--- php-src/ext/standard/php_incomplete_class.h:1.17.2.2.2.1.2.2 Mon Dec 31 07:17:15 2007
+++ php-src/ext/standard/php_incomplete_class.h Tue Sep 16 14:36:26 2008
@@ -16,7 +16,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: php_incomplete_class.h,v 1.17.2.2.2.1.2.2 2007/12/31 07:17:15 sebastian Exp $ */
+/* $Id: php_incomplete_class.h,v 1.17.2.2.2.1.2.3 2008/09/16 14:36:26 tony2001 Exp $ */
#ifndef PHP_INCOMPLETE_CLASS_H
#define PHP_INCOMPLETE_CLASS_H
@@ -31,6 +31,10 @@
if (Z_OBJ_HT_P(struc)->get_class_entry && \
Z_OBJCE_P(struc) == BG(incomplete_class)) { \
class_name = php_lookup_class_name(struc, &name_len); \
+ if (!class_name) { \
+ name_len = sizeof(INCOMPLETE_CLASS) - 1; \
+ class_name = estrndup(INCOMPLETE_CLASS, name_len); \
+ } \
free_class_name = 1; \
incomplete_class = 1; \
} else { \
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/serialize/incomplete_class.phpt?view=markup&rev=1.1
Index: php-src/ext/standard/tests/serialize/incomplete_class.phpt
+++ php-src/ext/standard/tests/serialize/incomplete_class.phpt
--TEST--
(un)serializing __PHP_Incomplete_Class instance
--FILE--
<?php
$d = serialize(new __PHP_Incomplete_Class);
$o = unserialize($d);
var_dump($o);
$o->test = "a";
var_dump($o->test);
var_dump($o->test2);
echo "Done\n";
?>
--EXPECTF--
object(__PHP_Incomplete_Class)#%d (0) {
}
Notice: main(): The script tried to execute a method or access a property of an incomplete object.
Please ensure that the class definition "unknown" 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 %s on line %d
Notice: main(): The script tried to execute a method or access a property of an incomplete object.
Please ensure that the class definition "unknown" 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 %s on line %d
NULL
Notice: main(): The script tried to execute a method or access a property of an incomplete object.
Please ensure that the class definition "unknown" 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 %s on line %d
NULL
Done