Page MenuHomePhorge

Fix PHP 8.1 "strlen(null)" exceptions which block rendering Log In page after user logout
ClosedPublic

Authored by aklapper on May 10 2023, 18:32.
Tags
None
Referenced Files
F2935886: D25217.1737882070.diff
Sat, Jan 25, 09:01
F2935714: D25217.1737863933.diff
Sat, Jan 25, 03:58
F2924278: D25217.1737575316.diff
Tue, Jan 21, 19:48
F2913148: D25217.1737423557.diff
Mon, Jan 20, 01:39
F2913147: D25217.1737423556.diff
Mon, Jan 20, 01:39
F2908787: D25217.1737382050.diff
Sun, Jan 19, 14:07
F2905380: D25217.1737344788.diff
Sun, Jan 19, 03:46
F2905242: D25217.1737340211.diff
Sun, Jan 19, 02:30

Details

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 T15384

Test Plan

Applied these four changes; logged in again; logged out again; finally saw "Log In" page with "Username or Email" and "Password" field on /auth/loggedout/ rendered in web browser.

Diff Detail

Repository
rP Phorge
Lint
Lint Not Applicable
Unit
Tests Not Applicable