]> granicus.if.org Git - php/commitdiff
Make zval2myslqnd implementations aware of inheritance
authorJohannes Schlüter <johannes@php.net>
Tue, 16 Jul 2013 11:52:57 +0000 (13:52 +0200)
committerJohannes Schlüter <johannes@php.net>
Tue, 16 Jul 2013 11:52:57 +0000 (13:52 +0200)
ext/mysqli/mysqli.c
ext/pdo_mysql/pdo_mysql.c

index 45e39d0b45b9922c25c1bac0ef6759fcfffad703..84f77d0eb65ee2920418fae018e9c56efb10907c 100644 (file)
@@ -531,7 +531,7 @@ PHP_MYSQLI_EXPORT(zend_object_value) mysqli_objects_new(zend_class_entry *class_
 #include "ext/mysqlnd/mysqlnd_reverse_api.h"
 static MYSQLND *mysqli_convert_zv_to_mysqlnd(zval * zv TSRMLS_DC)
 {
-       if (Z_TYPE_P(zv) == IS_OBJECT && Z_OBJCE_P(zv) == mysqli_link_class_entry) {
+       if (Z_TYPE_P(zv) == IS_OBJECT && instanceof_function(Z_OBJCE_P(zv), mysqli_link_class_entry) TSRMLS_CC) {
                MY_MYSQL * mysql;
                MYSQLI_RESOURCE  * my_res;
                mysqli_object * intern = (mysqli_object *)zend_object_store_get_object(zv TSRMLS_CC);
index 1dbb30f278924843563ba4e2722097a69d6eab82..0d4e525cd1310bc40086b22f0a0d210f72519167 100644 (file)
@@ -61,7 +61,7 @@ ZEND_DECLARE_MODULE_GLOBALS(pdo_mysql)
 #include "ext/mysqlnd/mysqlnd_reverse_api.h"
 static MYSQLND * pdo_mysql_convert_zv_to_mysqlnd(zval * zv TSRMLS_DC)
 {
-       if (Z_TYPE_P(zv) == IS_OBJECT && Z_OBJCE_P(zv) == php_pdo_get_dbh_ce()) {
+       if (Z_TYPE_P(zv) == IS_OBJECT && instanceof_function(Z_OBJCE_P(zv), php_pdo_get_dbh_ce() TSRMLS_CC)) {
                pdo_dbh_t * dbh = zend_object_store_get_object(zv TSRMLS_CC);
 
                if (!dbh || dbh->driver != &pdo_mysql_driver) {