Page MenuHomePhorge

Fix PHP 8.1 "strlen(null)" exceptions adding an OAuth provider
Needs ReviewPublic

Authored by aklapper on Mon, Apr 15, 15:00.
Tags
None
Referenced Files
F2170263: D25578.diff
Tue, Apr 30, 00:56
Unknown Object (File)
Sun, Apr 28, 02:06
Unknown Object (File)
Sat, Apr 27, 07:32
Unknown Object (File)
Thu, Apr 25, 19:25
Unknown Object (File)
Thu, Apr 25, 03:13
Unknown Object (File)
Wed, Apr 24, 09:15
Unknown Object (File)
Wed, Apr 24, 01:10
Unknown Object (File)
Mon, Apr 22, 09:09

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.

ERROR 8192: strlen(): Passing null to parameter #1 ($string) of type string is deprecated at [/var/www/html/phorge/phorge/src/applications/auth/provider/PhabricatorOAuth2AuthProvider.php:140]
ERROR 8192: strlen(): Passing null to parameter #1 ($string) of type string is deprecated at [/var/www/html/phorge/phorge/src/applications/auth/provider/PhabricatorOAuth2AuthProvider.php:155]
ERROR 8192: strlen(): Passing null to parameter #1 ($string) of type string is deprecated at [/var/www/html/phorge/phorge/src/applications/auth/provider/PhabricatorOAuth2AuthProvider.php:165]

Closes T15786

Test Plan

Set up any Auth provider which uses OAuth2 and check the error console.

Diff Detail

Repository
rP Phorge
Branch
AsanaAuthStrlen (branched from master)
Lint
Lint Passed
Unit
Tests Passed
Build Status
Buildable 1170
Build 1170: arc lint + arc unit