From a2bc03b8d8837411ef2cabc9af0511108194b231 Mon Sep 17 00:00:00 2001 From: "James D. Forrester" Date: Sun, 16 Mar 2025 19:11:19 -0400 Subject: [PATCH] MagicWord::replace*: Make sure we don't pass null into preg_match/preg_replace Bug: T388924 Change-Id: I02a3e724dc614f0a2306548f58f71d16a8a1dc5b (cherry picked from commit 2e4e9428580d4829911313644913c3c74cf43244) --- includes/parser/MagicWord.php | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/includes/parser/MagicWord.php b/includes/parser/MagicWord.php index b21f3a42c0c..f97e95dfbe0 100644 --- a/includes/parser/MagicWord.php +++ b/includes/parser/MagicWord.php @@ -178,7 +178,7 @@ class MagicWord { * @return bool */ public function match( $text ): bool { - return (bool)preg_match( $this->getRegex(), $text ); + return (bool)preg_match( $this->getRegex(), $text ?? '' ); } /** @@ -189,7 +189,7 @@ class MagicWord { * @since 1.23 */ public function matchStartToEnd( $text ): bool { - return (bool)preg_match( $this->getRegexStartToEnd(), $text ); + return (bool)preg_match( $this->getRegexStartToEnd(), $text ?? '' ); } /** @@ -203,7 +203,7 @@ class MagicWord { * @return bool */ public function matchAndRemove( &$text ): bool { - $text = preg_replace( $this->getRegex(), '', $text, -1, $count ); + $text = preg_replace( $this->getRegex(), '', $text ?? '', -1, $count ); return (bool)$count; } @@ -212,7 +212,7 @@ class MagicWord { * @return bool */ public function matchStartAndRemove( &$text ): bool { - $text = preg_replace( $this->getRegexStart(), '', $text, -1, $count ); + $text = preg_replace( $this->getRegexStart(), '', $text ?? '', -1, $count ); return (bool)$count; } @@ -229,7 +229,7 @@ class MagicWord { $res = preg_replace( $this->getRegex(), StringUtils::escapeRegexReplacement( $replacement ), - $subject, + $subject ?? '', $limit ); return $res;