]> granicus.if.org Git - php/commitdiff
fix usage of instanceof here too
authorWez Furlong <wez@php.net>
Sat, 2 Aug 2003 11:43:55 +0000 (11:43 +0000)
committerWez Furlong <wez@php.net>
Sat, 2 Aug 2003 11:43:55 +0000 (11:43 +0000)
Zend/zend_API.c

index f70152a8b77a774941ef6869d349f728ffc0dec3..c22cef4708813ab5695d0625a8f260f2cda860f7 100644 (file)
@@ -605,7 +605,10 @@ ZEND_API int zend_parse_method_parameters_ex(int flags, int num_args TSRMLS_DC,
 
                        return FAILURE;
                } else {
-                       if (!instanceof_function(Z_OBJCE_PP(parameter), ce TSRMLS_CC)) {
+                       if (Z_TYPE_PP(parameter) == IS_OBJECT &&
+                                       instanceof_function(Z_OBJCE_PP(parameter), ce TSRMLS_CC)) {
+                               *object = *parameter;
+                       } else {
                                if (!quiet) {
                                        zend_error(E_WARNING, "%s() expects parameter 1 to be %s, %s given",
                                                get_active_function_name(TSRMLS_C), ce->name,
@@ -613,8 +616,6 @@ ZEND_API int zend_parse_method_parameters_ex(int flags, int num_args TSRMLS_DC,
                                }
 
                                return FAILURE;
-                       } else {
-                               *object = *parameter;
                        }
 
                        EG(argument_stack).top_element++;