From 7362910408bbe5785e952acb67ba8084ceecd2ad Mon Sep 17 00:00:00 2001 From: Matthew Flaschen Date: Fri, 4 Aug 2017 18:39:38 -0400 Subject: [PATCH] WANCacheReapUpdate: Handle special pages without exception Bug: T172560 Change-Id: I95a6da2c5303e5fc4e931734e39974825d4c3c53 --- includes/deferred/WANCacheReapUpdate.php | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/includes/deferred/WANCacheReapUpdate.php b/includes/deferred/WANCacheReapUpdate.php index b12af19655..cbeb1fc77c 100644 --- a/includes/deferred/WANCacheReapUpdate.php +++ b/includes/deferred/WANCacheReapUpdate.php @@ -104,7 +104,13 @@ class WANCacheReapUpdate implements DeferrableUpdate { /** @var WikiPage[]|LocalFile[]|User[] $entities */ $entities = []; - $entities[] = WikiPage::factory( Title::newFromTitleValue( $t ) ); + // You can't create a WikiPage for special pages (-1) or other virtual + // namespaces, but special pages do appear in RC sometimes, e.g. for logs + // of AbuseFilter filter changes. + if ( $t->getNamespace() >= 0 ) { + $entities[] = WikiPage::factory( Title::newFromTitleValue( $t ) ); + } + if ( $t->inNamespace( NS_FILE ) ) { $entities[] = wfLocalFile( $t->getText() ); } -- 2.20.1