Skip to content

Commit 88225b9

Browse files
committed
Fix PHP 8.1 "strlen(null)" exception in ManiphestTaskPointsTransaction
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. ``` ERROR 8192: strlen(): Passing null to parameter freebsd#1 ($string) of type string is deprecated at [/var/www/html/phorge/phorge/src/applications/maniphest/xaction/ManiphestTaskPointsTransaction.php:85] ``` Closes T15902 Test Plan: Unclear due to lack of steps to reproduce. Reviewers: O1 Blessed Committers, valerio.bozzolan Reviewed By: O1 Blessed Committers, valerio.bozzolan Subscribers: tobiaswiese, valerio.bozzolan, Matthew, Cigaryno Maniphest Tasks: T15902 Differential Revision: https://we.phorge.it/D25765
1 parent 89778dc commit 88225b9

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

src/applications/maniphest/xaction/ManiphestTaskPointsTransaction.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ public function validateTransactions($object, array $xactions) {
8282

8383
foreach ($xactions as $xaction) {
8484
$new = $xaction->getNewValue();
85-
if (strlen($new) && !is_numeric($new)) {
85+
if (phutil_nonempty_string($new) && !is_numeric($new)) {
8686
$errors[] = $this->newInvalidError(
8787
pht('Points value must be numeric or empty.'));
8888
continue;

0 commit comments

Comments
 (0)