summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--includes/database/database.inc2
-rw-r--r--includes/database/select.inc7
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. */