Page MenuHomePhorge

PHP 8.1 "strlen(null)" exceptions block rendering Auth's Customize Messages page
Closed, ResolvedPublic

Description

  1. PHP 8.1.8
  2. Go to http://phorge.localhost/auth (Login and Registration Providers)
  3. Select Customize Messages in the sidebar to go to http://phorge.localhost/auth/message/
  4. Have no previous message customizations performed on this instance
  5. Select first item Username Change Instructions to go to http://phorge.localhost/auth/message/user.edit.username/ or second item; get stacktraces 2 and 3 below.
  6. Select third item (Mail Body: Set Password) to seventh item Mail Body: Welcome; , get stacktraces 1 and 2 and 3 below.
[2023-05-01 21:33:59] EXCEPTION: (RuntimeException) strlen(): Passing null to parameter #1 ($string) of type string is deprecated at [<arcanist>/src/error/PhutilErrorHandler.php:261]
arcanist(head=T15263, ref.master=82d1abd4edd1, ref.T15263=4324d11c8b49), phorge(head=T15325, ref.master=8f669ea08289, ref.T15325=bac8bc45a980)
  #0 <#2> PhutilErrorHandler::handleError(integer, string, string, integer) called at [<phorge>/src/applications/auth/controller/message/PhabricatorAuthMessageViewController.php:106]
  #1 <#2> PhabricatorAuthMessageViewController::buildPropertiesView(PhabricatorAuthMessage) called at [<phorge>/src/applications/auth/controller/message/PhabricatorAuthMessageViewController.php:56]
  #2 <#2> PhabricatorAuthMessageViewController::handleRequest(AphrontRequest) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:284]
  #3 phlog(RuntimeException) called at [<phorge>/src/aphront/handler/PhabricatorDefaultRequestExceptionHandler.php:41]
  #4 PhabricatorDefaultRequestExceptionHandler::handleRequestThrowable(AphrontRequest, RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:751]
  #5 AphrontApplicationConfiguration::handleThrowable(RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:296]
  #6 AphrontApplicationConfiguration::processRequest(AphrontRequest, PhutilDeferredLog, AphrontPHPHTTPSink, MultimeterControl) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:204]
  #7 AphrontApplicationConfiguration::runHTTPRequest(AphrontPHPHTTPSink) called at [<phorge>/webroot/index.php:35]

Fix that line, get next exception:

[2023-05-01 21:27:35] EXCEPTION: (RuntimeException) strlen(): Passing null to parameter #1 ($string) of type string is deprecated at [<arcanist>/src/error/PhutilErrorHandler.php:261]
arcanist(head=T15263, ref.master=82d1abd4edd1, ref.T15263=4324d11c8b49), phorge(head=T15325, ref.master=8f669ea08289, ref.T15325=8f669ea08289)
  #0 <#2> PhutilErrorHandler::handleError(integer, string, string, integer) called at [<phorge>/src/applications/auth/controller/message/PhabricatorAuthMessageViewController.php:114]
  #1 <#2> PhabricatorAuthMessageViewController::buildPropertiesView(PhabricatorAuthMessage) called at [<phorge>/src/applications/auth/controller/message/PhabricatorAuthMessageViewController.php:56]
  #2 <#2> PhabricatorAuthMessageViewController::handleRequest(AphrontRequest) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:284]
  #3 phlog(RuntimeException) called at [<phorge>/src/aphront/handler/PhabricatorDefaultRequestExceptionHandler.php:41]
  #4 PhabricatorDefaultRequestExceptionHandler::handleRequestThrowable(AphrontRequest, RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:751]
  #5 AphrontApplicationConfiguration::handleThrowable(RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:296]
  #6 AphrontApplicationConfiguration::processRequest(AphrontRequest, PhutilDeferredLog, AphrontPHPHTTPSink, MultimeterControl) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:204]
  #7 AphrontApplicationConfiguration::runHTTPRequest(AphrontPHPHTTPSink) called at [<phorge>/webroot/index.php:35]

Fix that line, get next exception:

[2023-05-01 21:29:09] EXCEPTION: (RuntimeException) strlen(): Passing null to parameter #1 ($string) of type string is deprecated at [<arcanist>/src/error/PhutilErrorHandler.php:261]
arcanist(head=T15263, ref.master=82d1abd4edd1, ref.T15263=4324d11c8b49), phorge(head=T15325, ref.master=8f669ea08289, ref.T15325=8f669ea08289)
  #0 <#2> PhutilErrorHandler::handleError(integer, string, string, integer) called at [<phorge>/src/applications/auth/controller/message/PhabricatorAuthMessageViewController.php:123]
  #1 <#2> PhabricatorAuthMessageViewController::buildPropertiesView(PhabricatorAuthMessage) called at [<phorge>/src/applications/auth/controller/message/PhabricatorAuthMessageViewController.php:56]
  #2 <#2> PhabricatorAuthMessageViewController::handleRequest(AphrontRequest) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:284]
  #3 phlog(RuntimeException) called at [<phorge>/src/aphront/handler/PhabricatorDefaultRequestExceptionHandler.php:41]
  #4 PhabricatorDefaultRequestExceptionHandler::handleRequestThrowable(AphrontRequest, RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:751]
  #5 AphrontApplicationConfiguration::handleThrowable(RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:296]
  #6 AphrontApplicationConfiguration::processRequest(AphrontRequest, PhutilDeferredLog, AphrontPHPHTTPSink, MultimeterControl) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:204]
  #7 AphrontApplicationConfiguration::runHTTPRequest(AphrontPHPHTTPSink) called at [<phorge>/webroot/index.php:35]

Fix that line. Afterwards, page Username Change Instructions at http://phorge.localhost/auth/message/user.edit.username/ gets rendered in web browser.

Related Objects

View Standalone Graph
This task is connected to more than 200 other tasks. Only direct parents and subtasks are shown here. Use View Standalone Graph to show more of the graph.