diff options
-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. */ |