Commit:    d3a4af4db8d44f3d4a353589857c3c016ba8beda
Author:    Johannes Schlüter <johan...@php.net>         Tue, 16 Jul 2013 
13:52:57 +0200
Parents:   bcb39d9c6a0b0a16c9bda5a661a0897e96de09a5
Branches:  PHP-5.4 PHP-5.5 master

Link:       
http://git.php.net/?p=php-src.git;a=commitdiff;h=d3a4af4db8d44f3d4a353589857c3c016ba8beda

Log:
Make zval2myslqnd implementations aware of inheritance

Changed paths:
  M  ext/mysqli/mysqli.c
  M  ext/pdo_mysql/pdo_mysql.c


Diff:
diff --git a/ext/mysqli/mysqli.c b/ext/mysqli/mysqli.c
index 45e39d0..84f77d0 100644
--- a/ext/mysqli/mysqli.c
+++ b/ext/mysqli/mysqli.c
@@ -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);
diff --git a/ext/pdo_mysql/pdo_mysql.c b/ext/pdo_mysql/pdo_mysql.c
index 1dbb30f..0d4e525 100644
--- a/ext/pdo_mysql/pdo_mysql.c
+++ b/ext/pdo_mysql/pdo_mysql.c
@@ -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) {


--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to