* @param string|null $deprecatedVersion Optionally, mark hook as deprecated with version number
* @return bool True if no handler aborted the hook
*
+ * @throws Exception
+ * @throws FatalError
+ * @throws MWException
* @since 1.22 A hook function is not required to return a value for
* processing to continue. Not returning a value (or explicitly
* returning null) is equivalent to returning true.
- * @throws MWException
- * @throws FatalError
*/
public static function run( $event, array $args = array(), $deprecatedVersion = null ) {
- $profiler = Profiler::instance();
- $eventPS = $profiler->scopedProfileIn( 'hook: ' . $event );
-
foreach ( self::getHandlers( $event ) as $hook ) {
// Turn non-array values into an array. (Can't use casting because of objects.)
if ( !is_array( $hook ) ) {
$badhookmsg = null;
$hook_args = array_merge( $hook, $args );
- // Profile first in case the Profiler causes errors
- $funcPS = $profiler->scopedProfileIn( $func );
set_error_handler( 'Hooks::hookErrorHandler' );
// mark hook as deprecated, if deprecation version is specified
}
restore_error_handler();
- $profiler->scopedProfileOut( $funcPS );
// Process the return value.
if ( is_string( $retval ) ) {