From aa9ad966ebd60b9940466839e8e94b1c65d12df3 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Mat=C4=9Bj=20Such=C3=A1nek?= Date: Sun, 3 Feb 2019 13:17:04 +0100 Subject: [PATCH] Prevent undesired toggling on Special:NewPages Bug: T211549 Change-Id: I09928674c66a6359a417a221049259cb318dd00a --- includes/specials/SpecialNewpages.php | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/includes/specials/SpecialNewpages.php b/includes/specials/SpecialNewpages.php index 8051b0b4e4..2bbc0bf486 100644 --- a/includes/specials/SpecialNewpages.php +++ b/includes/specials/SpecialNewpages.php @@ -192,9 +192,12 @@ class SpecialNewpages extends IncludableSpecialPage { // wfArrayToCgi(), called from LinkRenderer/Title, will not output null and false values // to the URL, which would omit some options (T158504). Fix it by explicitly setting them // to 0 or 1. - $changed = array_map( function ( $value ) { - return $value ? '1' : '0'; - }, $changed ); + // Also do this only for boolean options, not eg. namespace or tagfilter + foreach ( $changed as $key => $value ) { + if ( array_key_exists( $key, $filters ) ) { + $changed[$key] = $changed[$key] ? '1' : '0'; + } + } $self = $this->getPageTitle(); $linkRenderer = $this->getLinkRenderer(); -- 2.20.1