From ee81cf7b5905bd684e1307513868aa02885f7def Mon Sep 17 00:00:00 2001 From: Kunal Mehta Date: Mon, 12 Sep 2016 23:32:06 -0700 Subject: [PATCH] ChangeTags: Skip caching if some hooks aren't registered There is caching around the ChangeTagsListActive and ListDefinedTags hooks that can be skipped if no callers are registered for them. Change-Id: I0c8fccc358f80536fff7ad0bda1cab09181bca41 --- includes/changetags/ChangeTags.php | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/includes/changetags/ChangeTags.php b/includes/changetags/ChangeTags.php index c8c50736d0..a6e4e78ddc 100644 --- a/includes/changetags/ChangeTags.php +++ b/includes/changetags/ChangeTags.php @@ -1132,6 +1132,9 @@ class ChangeTags { * @since 1.25 */ public static function listExtensionActivatedTags() { + if ( !Hooks::isRegistered( 'ChangeTagsListActive' ) ) { + return []; + } return ObjectCache::getMainWANInstance()->getWithSetCallback( wfMemcKey( 'active-tags' ), WANObjectCache::TTL_MINUTE * 5, @@ -1207,6 +1210,9 @@ class ChangeTags { * @since 1.25 */ public static function listExtensionDefinedTags() { + if ( !Hooks::isRegistered( 'ListDefinedTags' ) ) { + return []; + } return ObjectCache::getMainWANInstance()->getWithSetCallback( wfMemcKey( 'valid-tags-hook' ), WANObjectCache::TTL_MINUTE * 5, -- 2.20.1