summaryrefslogtreecommitdiff
path: root/Zend/zend_API.c
diff options
context:
space:
mode:
authorStanislav Malyshev <stas@php.net>2002-04-30 09:56:48 +0000
committerStanislav Malyshev <stas@php.net>2002-04-30 09:56:48 +0000
commit7a067547cd55809e5fa670e2cfcf43f8ae5d27b0 (patch)
treeda93371e6bc2122f365c1768ba909de063d3f387 /Zend/zend_API.c
parent3858221c2ff90cecd96b7e379b2157bbf1b9ede4 (diff)
downloadphp-git-7a067547cd55809e5fa670e2cfcf43f8ae5d27b0.tar.gz
Make OBJCE return zend_class_entry*, also some cleanups
Diffstat (limited to 'Zend/zend_API.c')
-rw-r--r--Zend/zend_API.c20
1 files changed, 6 insertions, 14 deletions
diff --git a/Zend/zend_API.c b/Zend/zend_API.c
index 015197ca68..c0d00c48f8 100644
--- a/Zend/zend_API.c
+++ b/Zend/zend_API.c
@@ -198,23 +198,15 @@ ZEND_API char *zend_zval_type_name(zval *arg)
}
}
-ZEND_API zend_class_entry **zend_get_class_entry(zval *zobject)
+ZEND_API zend_class_entry *zend_get_class_entry(zval *zobject)
{
- zend_class_entry **ce;
-
if (Z_OBJ_HT_P(zobject)->get_class_entry) {
TSRMLS_FETCH();
- ce = Z_OBJ_HT_P(zobject)->get_class_entry(zobject TSRMLS_CC);
+ return Z_OBJ_HT_P(zobject)->get_class_entry(zobject TSRMLS_CC);
} else {
- if(!IS_ZEND_STD_OBJECT(*zobject)) {
- zend_error(E_ERROR, "Class entry required for an object without class");
- return NULL;
- }
-
- ce = &(Z_OBJ_P(zobject)->ce);
+ zend_error(E_ERROR, "Class entry requested for an object without PHP class");
+ return NULL;
}
-
- return ce;
}
static int zend_check_class(zval *obj, zend_class_entry *expected_ce)
@@ -615,12 +607,12 @@ ZEND_API int _object_and_properties_init(zval *arg, zend_class_entry *class_type
ZEND_API int _object_init_ex(zval *arg, zend_class_entry *class_type ZEND_FILE_LINE_DC TSRMLS_DC)
{
- return _object_and_properties_init(arg, class_type, 0 ZEND_FILE_LINE_CC TSRMLS_CC);
+ return _object_and_properties_init(arg, class_type, 0 ZEND_FILE_LINE_RELAY_CC TSRMLS_CC);
}
ZEND_API int _object_init(zval *arg ZEND_FILE_LINE_DC TSRMLS_DC)
{
- return _object_init_ex(arg, zend_standard_class_def ZEND_FILE_LINE_CC TSRMLS_CC);
+ return _object_init_ex(arg, zend_standard_class_def ZEND_FILE_LINE_RELAY_CC TSRMLS_CC);
}