]> granicus.if.org Git - php/commitdiff
MFH Fix #44424 (Extending PDO/MySQL class with a __call() function doesn't work)
authorJohannes Schlüter <johannes@php.net>
Tue, 16 Sep 2008 23:37:35 +0000 (23:37 +0000)
committerJohannes Schlüter <johannes@php.net>
Tue, 16 Sep 2008 23:37:35 +0000 (23:37 +0000)
NEWS
ext/pdo/pdo_dbh.c

diff --git a/NEWS b/NEWS
index 7850aec94e8a8f58014f63678df776b130c96f68..6ad6c075d3043f0faa8f823740471aca1652da36 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -102,6 +102,8 @@ PHP                                                                        NEWS
   (Hannes)
 - Fixed bug #44617 (wrong HTML entity output when substitute_character=entity).
   (Moriyoshi)
+- Fixed bug #44425 (Extending PDO/MySQL class with a __call() function doesn't
+  work). (Johannes)
 - Fixed bug #44246 (closedir() accepts a file resource opened by fopen()).
   (Dmitry, Tony)
 - Fixed bug #44127 (UNIX abstract namespace socket connect does not work).
index fda9a08a2aba843563d2cad97f1b5be8c513c2ba..699855b81e340eab3d7ba7a32c421b3734a3ad5e 100755 (executable)
@@ -1291,9 +1291,7 @@ static union _zend_function *dbh_method_get(
 
                if (zend_hash_find(dbh->cls_methods[PDO_DBH_DRIVER_METHOD_KIND_DBH],
                                lc_method_name, method_len+1, (void**)&fbc) == FAILURE) {
-                       if (std_object_handlers.get_method) {
-                               fbc = std_object_handlers.get_method(object_pp, lc_method_name, method_len TSRMLS_CC);
-                       }
+
                        if (!fbc) {
                                fbc = NULL;
                        }
@@ -1304,6 +1302,12 @@ static union _zend_function *dbh_method_get(
        }
 
 out:
+       if (!fbc) {
+               if (std_object_handlers.get_method) {
+                       fbc = std_object_handlers.get_method(object_pp, lc_method_name, method_len TSRMLS_CC);
+               }
+       }
+
        efree(lc_method_name);
        return fbc;
 }