Page MenuHomePhorge

No OneTemporary

diff --git a/src/infrastructure/events/PhabricatorEventEngine.php b/src/infrastructure/events/PhabricatorEventEngine.php
index 2f14a2d1e7..8d49752d61 100644
--- a/src/infrastructure/events/PhabricatorEventEngine.php
+++ b/src/infrastructure/events/PhabricatorEventEngine.php
@@ -1,28 +1,35 @@
<?php
/**
* @group events
*/
final class PhabricatorEventEngine {
public static function initialize() {
$listeners = PhabricatorEnv::getEnvConfig('events.listeners');
foreach ($listeners as $listener) {
- id(new $listener())->register();
+ try {
+ id(new $listener())->register();
+ } catch (Exception $ex) {
+ // If the listener does not exist, or throws when registering, just
+ // log it and continue. In particular, this is important to let you
+ // run `bin/config` in order to remove an invalid listener.
+ phlog($ex);
+ }
}
// Register the DarkConosole event logger.
id(new DarkConsoleEventPluginAPI())->register();
id(new ManiphestEdgeEventListener())->register();
$applications = PhabricatorApplication::getAllInstalledApplications();
foreach ($applications as $application) {
$listeners = $application->getEventListeners();
foreach ($listeners as $listener) {
$listener->register();
}
}
}
}

File Metadata

Mime Type
text/x-diff
Expires
Jan 19 2025, 22:12 (6 w, 2 d ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
1129276
Default Alt Text
(1 KB)

Event Timeline