HomePhorge

Fix PHP 8.1 "strlen(null)" exception which blocks rendering list of Active/All…

Description

Fix PHP 8.1 "strlen(null)" exception which blocks rendering list of Active/All projects

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 T15312

Test Plan:
Applied this change (on top of D25144, D25145, D25146, D25147, D25151, D25152, D25153 and /project/query/active/ rendered correctly in web browser.

Tested surfing various pages with and without Maniphest's maniphest.subtypes.

If you need some example custom fields, this is an example:

[
    {
      "key": "default",
      "name": "Task"
    },
    {
      "key": "bug",
      "name": "Bug"
    },
    {
      "key": "log",
      "name": "LogSpam"
    },
    {
      "key": "deadline",
      "name": "Deadline"
    }
  ]

Reviewers: O1 Blessed Committers, valerio.bozzolan

Reviewed By: O1 Blessed Committers, valerio.bozzolan

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

Maniphest Tasks: T15312

Differential Revision: https://we.phorge.it/D25162

Details

Provenance
Andre KlapperAuthored on May 1 2023, 6:55 AM
themackabuPushed on Mar 25 2025, 8:07 PM
Parents
rP313d3b7bf2ea: Fix PHP 8.1 "strlen(null)" exceptions which block rendering the Maniphest task…
Branches
Unknown
Tags
Unknown

Event Timeline