summaryrefslogtreecommitdiff
path: root/ext/standard/php_incomplete_class.h
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@php.net>2004-03-18 16:54:36 (GMT)
committerDmitry Stogov <dmitry@php.net>2004-03-18 16:54:36 (GMT)
commitdeb84befae4bbc3686a4f2ed82b04e2cabae5dc0 (patch)
tree5f918f5692603efac83886bbef185f175875522d /ext/standard/php_incomplete_class.h
parent814000305a7689355bcb601330147a107fd96d9c (diff)
downloadphp-deb84befae4bbc3686a4f2ed82b04e2cabae5dc0.tar.gz
BUG #27469 was fixed (serialize() objects of incomplete class)
Diffstat (limited to 'ext/standard/php_incomplete_class.h')
-rw-r--r--ext/standard/php_incomplete_class.h8
1 files changed, 5 insertions, 3 deletions
diff --git a/ext/standard/php_incomplete_class.h b/ext/standard/php_incomplete_class.h
index 30ee705..8c7f68a 100644
--- a/ext/standard/php_incomplete_class.h
+++ b/ext/standard/php_incomplete_class.h
@@ -29,8 +29,9 @@
#define PHP_SET_CLASS_ATTRIBUTES(struc) \
/* OBJECTS_FIXME: Fix for new object model */ \
if (Z_OBJCE_P(struc) == BG(incomplete_class)) { \
- class_name = php_lookup_class_name(struc, &name_len, 1); \
+ class_name = php_lookup_class_name(struc, &name_len); \
free_class_name = 1; \
+ incomplete_class = 1; \
} else { \
class_name = Z_OBJCE_P(struc)->name; \
name_len = Z_OBJCE_P(struc)->name_length; \
@@ -42,7 +43,8 @@
#define PHP_CLASS_ATTRIBUTES \
char *class_name; \
size_t name_len; \
- zend_bool free_class_name = 0 \
+ zend_bool free_class_name = 0; \
+ zend_bool incomplete_class = 0
#define INCOMPLETE_CLASS "__PHP_Incomplete_Class"
#define MAGIC_MEMBER "__PHP_Incomplete_Class_Name"
@@ -53,7 +55,7 @@ extern "C" {
zend_class_entry *php_create_incomplete_class(TSRMLS_D);
-char *php_lookup_class_name(zval *object, size_t *nlen, zend_bool del);
+char *php_lookup_class_name(zval *object, size_t *nlen);
void php_store_class_name(zval *object, const char *name, size_t len);
#ifdef __cplusplus