Page MenuHomePhorge

PHP 8.1 "strlen(null)" exception blocks editing a Dashboard Tab Panel
Closed, ResolvedPublic

Description

  1. PHP 8.2.5; Phorge at 8eaa7c1ccf3d75d438e83e074a28ea7de1f15d37
  2. Go to http://phorge.localhost/dashboard/panel/
  3. Go to an existing Tab Panel at http://phorge.localhost/W2
  4. Select Edit Panel in the sidebar
[2023-05-04 16:01:00] EXCEPTION: (RuntimeException) strlen(): Passing null to parameter #1 ($string) of type string is deprecated at [<arcanist>/src/error/PhutilErrorHandler.php:261]
arcanist(head=master, ref.master=d47289622650), phorge(head=createTabDashboardPanel, ref.master=8eaa7c1ccf3d, ref.createTabDashboardPanel=8eaa7c1ccf3d)
  #0 <#2> PhutilErrorHandler::handleError(integer, string, string, integer) called at [<phorge>/src/applications/dashboard/controller/panel/PhabricatorDashboardPanelEditController.php:18]
  #1 <#2> PhabricatorDashboardPanelEditController::handleRequest(AphrontRequest) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:284]
  #2 phlog(RuntimeException) called at [<phorge>/src/aphront/handler/PhabricatorDefaultRequestExceptionHandler.php:41]
  #3 PhabricatorDefaultRequestExceptionHandler::handleRequestThrowable(AphrontRequest, RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:751]
  #4 AphrontApplicationConfiguration::handleThrowable(RuntimeException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:296]
  #5 AphrontApplicationConfiguration::processRequest(AphrontRequest, PhutilDeferredLog, AphrontPHPHTTPSink, MultimeterControl) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:203]
  #6 AphrontApplicationConfiguration::runHTTPRequest(AphrontPHPHTTPSink) called at [<phorge>/webroot/index.php:35]

After fixing that exception, Edit Panel: tabpaneltest2 at http://phorge.localhost/dashboard/panel/edit/2/ is correctly rendered in web browser.

For context, when first going to a Dashboard which includes the tab panel, and using the Manage Panel 🡒 Edit Panel workflow to edit that panel, the resulting URL has a contextPHID parameter that this code is looking for, e.g.: http://phorge.localhost/dashboard/panel/edit/2/?contextPHID=PHID-DSHB-ophnrt7yzfiqm5xqtoa3

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.