Page MenuHomePhabricator

Fix variable issue on Conpherence draft saving pathway
ClosedPublic

Authored by epriestley on Feb 24 2014, 7:48 PM.
Tags
None
Referenced Files
F15534326: D8323.diff
Wed, Apr 23, 11:45 PM
F15488277: D8323.diff
Thu, Apr 10, 8:56 PM
F15459513: D8323.id19794.diff
Mon, Mar 31, 1:43 PM
F15407903: D8323.diff
Mar 18 2025, 8:09 PM
F15387418: D8323.id19794.diff
Mar 15 2025, 2:21 AM
F15383049: D8323.diff
Mar 14 2025, 3:23 PM
F15282710: D8323.diff
Mar 4 2025, 1:42 AM
Unknown Object (File)
Feb 28 2025, 6:30 PM
Subscribers

Details

Summary

When we save a Conpherence draft, the draft part works fine but $xactions never gets defined, so this gets hit a little later on:

[24-Feb-2014 11:46:10] WARNING: [pool www] child 82805 said into stderr: "NOTICE: PHP message: [2014-02-24 11:46:10] EXCEPTION: (RuntimeException) Undefined variable: xactions at [/INSECURE/devtools/libphutil/src/error/PhutilErrorHandler.php:211]"
[24-Feb-2014 11:46:10] WARNING: [pool www] child 82805 said into stderr: "NOTICE: PHP message:   #0 PhutilErrorHandler::handleError(8, Undefined variable: xactions, /INSECURE/devtools/phabricator/src/applications/conpherence/controller/ConpherenceUpdateController.php, 122, Array of size 13 starting with: { request => Object AphrontRequest }) called at [/INSECURE/devtools/phabricator/src/applications/conpherence/controller/ConpherenceUpdateController.php:122]"
[24-Feb-2014 11:46:10] WARNING: [pool www] child 82805 said into stderr: "NOTICE: PHP message:   #1 ConpherenceUpdateController::processRequest() called at [/INSECURE/devtools/phabricator/webroot/index.php:87]"

Instead, define $xactions.

Test Plan
  • Type into Conpherence while tailing the error log.
  • After patch, clean error log.

Diff Detail

Repository
rP Phabricator
Branch
conpherence
Lint
Lint Passed
Unit
Tests Passed

Event Timeline

Thank you sir. Apologies for putting poop in your error log.

haha, no problem. I think we intentionally ignore errors in ShapedRequest, which is most of the root cause here. A more systematic fix might be to ignore errors only in production, but as long as we're only hitting this kind of thing a couple times a year I'm inclined not to bother.