1
0
Fork 0
mirror of https://we.phorge.it/source/phorge.git synced 2024-11-25 16:22:43 +01:00

Fix PHP 8.1 "strlen(null)" exception in PhabricatorPasteLanguageTransaction.php

Summary:
`strlen()` was used in Phabricator to check if a generic value is a non-empty string.
This behavior is deprecated since PHP 8.1. Phorge adopts `phutil_nonempty_string()` as a replacement.

Note: this may highlight other absurd input values that might be worth correcting
instead of just ignoring. If phutil_nonempty_string() throws an exception in your
instance, report it to Phorge to evaluate and fix that specific corner case.

Closes T15808

Test Plan: Unknown. Given that the function rendering `$value` is later called to construct a title string passed to `pht()` I assume that it should be a string and not a scalar.

Reviewers: O1 Blessed Committers, speck

Reviewed By: O1 Blessed Committers, speck

Subscribers: speck, tobiaswiese, valerio.bozzolan, Matthew, Cigaryno

Maniphest Tasks: T15808

Differential Revision: https://we.phorge.it/D25611
This commit is contained in:
Andre Klapper 2024-05-01 17:48:04 +02:00
parent 488960ae7a
commit 279ed1ee76

View file

@ -14,7 +14,7 @@ final class PhabricatorPasteLanguageTransaction
} }
private function renderLanguageValue($value) { private function renderLanguageValue($value) {
if (!strlen($value)) { if (!phutil_nonempty_string($value)) {
return $this->renderValue(pht('autodetect')); return $this->renderValue(pht('autodetect'));
} else { } else {
return $this->renderValue($value); return $this->renderValue($value);