diff options
author | Dries Buytaert <dries@buytaert.net> | 2010-07-19 13:23:21 +0000 |
---|---|---|
committer | Dries Buytaert <dries@buytaert.net> | 2010-07-19 13:23:21 +0000 |
commit | 9cf185c3917bb0de39ea5ce2d2ddbbc50b3e1d73 (patch) | |
tree | cb2c3fbbceadfdb905dd2752da9726009a18453c | |
parent | 744198926e76ba6db5785eb13085fcc60bd8818d (diff) | |
download | brdo-9cf185c3917bb0de39ea5ce2d2ddbbc50b3e1d73.tar.gz brdo-9cf185c3917bb0de39ea5ce2d2ddbbc50b3e1d73.tar.bz2 |
- Patch #852362 by chx: fixed extend is 100% fubar.
-rw-r--r-- | includes/database/database.inc | 2 | ||||
-rw-r--r-- | includes/database/select.inc | 7 |
2 files changed, 3 insertions, 6 deletions
diff --git a/includes/database/database.inc b/includes/database/database.inc index d2a633d5a..a75764948 100644 --- a/includes/database/database.inc +++ b/includes/database/database.inc @@ -646,7 +646,7 @@ abstract class DatabaseConnection extends PDO { * @return string * The name of the class that should be used for this driver. */ - protected function getDriverClass($class) { + public function getDriverClass($class) { if (empty($this->driverClasses[$class])) { $this->driverClasses[$class] = $class . '_' . $this->driver(); if (!class_exists($this->driverClasses[$class])) { diff --git a/includes/database/select.inc b/includes/database/select.inc index 34defb56c..1777a20d4 100644 --- a/includes/database/select.inc +++ b/includes/database/select.inc @@ -601,11 +601,8 @@ class SelectQueryExtender implements SelectQueryInterface { /* Implementations of QueryExtendableInterface. */ public function extend($extender_name) { - $override_class = $this->connection->driver(); - if (class_exists($override_class)) { - $extender_name = $override_class; - } - return new $extender_name($this, $this->connection); + $class = $this->connection->getDriverClass($extender_name); + return new $class($this, $this->connection); } /* Alter accessors to expose the query data to alter hooks. */ |