felipe Fri Mar 27 16:50:39 2009 UTC
Modified files: (Branch: PHP_5_2)
/php-src NEWS
/php-src/ext/pdo pdo_dbh.c
Log:
MFH: - Fixed bug #47769 (Strange extends PDO)
http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.1450&r2=1.2027.2.547.2.1451&diff_format=u
Index: php-src/NEWS
diff -u php-src/NEWS:1.2027.2.547.2.1450 php-src/NEWS:1.2027.2.547.2.1451
--- php-src/NEWS:1.2027.2.547.2.1450 Thu Mar 26 00:00:18 2009
+++ php-src/NEWS Fri Mar 27 16:50:38 2009
@@ -8,6 +8,7 @@
- Fixed memory leak in ob_get_clean/ob_get_flush. (Christian)
- Fixed bug #47772 (FILTER_VALIDATE_EMAIL allows f...@bar. addresses). (Ilia)
+- Fixed bug #47769 (Strange extends PDO). (Felipe)
- Fixed bug #47721 (Alignment issues in mbstring and sysvshm extension)
(crrodriguez at opensuse dot org, Ilia)
- Fixed bug #47704 (PHP crashes on some "bad" operations with string offsets).
http://cvs.php.net/viewvc.cgi/php-src/ext/pdo/pdo_dbh.c?r1=1.82.2.31.2.25&r2=1.82.2.31.2.26&diff_format=u
Index: php-src/ext/pdo/pdo_dbh.c
diff -u php-src/ext/pdo/pdo_dbh.c:1.82.2.31.2.25
php-src/ext/pdo/pdo_dbh.c:1.82.2.31.2.26
--- php-src/ext/pdo/pdo_dbh.c:1.82.2.31.2.25 Wed Dec 31 11:17:41 2008
+++ php-src/ext/pdo/pdo_dbh.c Fri Mar 27 16:50:38 2009
@@ -18,7 +18,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: pdo_dbh.c,v 1.82.2.31.2.25 2008/12/31 11:17:41 sebastian Exp $ */
+/* $Id: pdo_dbh.c,v 1.82.2.31.2.26 2009/03/27 16:50:38 felipe Exp $ */
/* The PDO Database Handle Class */
@@ -1277,7 +1277,7 @@
lc_method_name = emalloc(method_len + 1);
zend_str_tolower_copy(lc_method_name, method_name, method_len);
- if (zend_hash_find(&dbh->ce->function_table, lc_method_name,
method_len+1, (void**)&fbc) == FAILURE) {
+ if ((fbc = std_object_handlers.get_method(object_pp, lc_method_name,
method_len TSRMLS_CC)) == NULL) {
/* not a pre-defined method, nor a user-defined method; check
* the driver specific methods */
if (!dbh->cls_methods[PDO_DBH_DRIVER_METHOD_KIND_DBH]) {
@@ -1290,23 +1290,14 @@
if
(zend_hash_find(dbh->cls_methods[PDO_DBH_DRIVER_METHOD_KIND_DBH],
lc_method_name, method_len+1, (void**)&fbc) ==
FAILURE) {
-
if (!fbc) {
fbc = NULL;
}
-
- goto out;
}
/* got it */
}
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;
}
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php