diff --git a/core/util.inc.php b/core/util.inc.php index 220473b0..b05cc5d0 100644 --- a/core/util.inc.php +++ b/core/util.inc.php @@ -1348,7 +1348,15 @@ function _set_event_listeners() { elseif(is_subclass_of($class, "Extension")) { $extension = new $class(); $extension->i_am($extension); - $my_events = array(); + + // skip extensions which don't support our current database + if(property_exists($extension, 'db_support')) { + global $database; + if(!in_array($database->get_driver_name(), $extension->db_support)) { + continue; + } + } + foreach(get_class_methods($extension) as $method) { if(substr($method, 0, 2) == "on") { $event = substr($method, 2) . "Event"; diff --git a/ext/relatationships/main.php b/ext/relatationships/main.php index dc4fe6b1..87697c31 100644 --- a/ext/relatationships/main.php +++ b/ext/relatationships/main.php @@ -7,6 +7,8 @@ */ class Relationships extends Extension { + public $db_support = ['mysql', 'pgsql']; + public function onInitExt(InitExtEvent $event) { global $config, $database;