1
0
mirror of https://git.tt-rss.org/git/tt-rss.git synced 2025-12-20 16:51:28 +00:00

pluginhost: catch fatal errors in plugin init

This commit is contained in:
Andrew Dolgov
2021-02-08 12:10:25 +03:00
parent 9de26d44da
commit 4165834f80

View File

@@ -249,23 +249,29 @@ class PluginHost {
$this->last_registered = $class; $this->last_registered = $class;
switch ($kind) { try {
case $this::KIND_SYSTEM: switch ($kind) {
if ($this->is_system($plugin)) { case $this::KIND_SYSTEM:
if (!$skip_init) $plugin->init($this); if ($this->is_system($plugin)) {
$this->register_plugin($class, $plugin); if (!$skip_init) $plugin->init($this);
} $this->register_plugin($class, $plugin);
break; }
case $this::KIND_USER: break;
if (!$this->is_system($plugin)) { case $this::KIND_USER:
if (!$skip_init) $plugin->init($this); if (!$this->is_system($plugin)) {
$this->register_plugin($class, $plugin); if (!$skip_init) $plugin->init($this);
} $this->register_plugin($class, $plugin);
break; }
case $this::KIND_ALL: break;
if (!$skip_init) $plugin->init($this); case $this::KIND_ALL:
$this->register_plugin($class, $plugin); if (!$skip_init) $plugin->init($this);
break; $this->register_plugin($class, $plugin);
break;
}
} catch (Exception $ex) {
user_error($ex, E_USER_WARNING);
} catch (Error $err) {
user_error($err, E_USER_WARNING);
} }
} }
} }