Page MenuHomePhabricator

Make sure TempFiles are destroyed after a PHP fatal error
ClosedPublic

Authored by epriestley on Aug 21 2014, 6:39 PM.
Tags
None
Referenced Files
Unknown Object (File)
Wed, Dec 11, 6:16 AM
Unknown Object (File)
Wed, Dec 11, 5:03 AM
Unknown Object (File)
Sat, Dec 7, 1:26 AM
Unknown Object (File)
Tue, Dec 3, 8:29 PM
Unknown Object (File)
Tue, Dec 3, 8:29 PM
Unknown Object (File)
Tue, Dec 3, 8:29 PM
Unknown Object (File)
Tue, Dec 3, 8:29 PM
Unknown Object (File)
Tue, Dec 3, 8:20 PM
Subscribers

Details

Summary

Fixes T4284. Object destructors are not called after a fatal, but shutdown functions are.

Test Plan
  • Created a test script which makes a temp file, then fatals.
  • Before patch, temp file was left around.
  • After patch, it is cleaned up.
  • Explicitly destroyed the tempfile in the script to verify that double-destruction is fine.
  • Removed fatal to verify that normal behavior works as expected.

Diff Detail

Repository
rPHU libphutil
Branch
tfile
Lint
Lint Passed
Unit
Tests Passed
Build Status
Buildable 2319
Build 2323: [Placeholder Plan] Wait for 30 Seconds

Event Timeline

epriestley retitled this revision from to Make sure TempFiles are destroyed after a PHP fatal error.
epriestley updated this object.
epriestley edited the test plan for this revision. (Show Details)
epriestley added a reviewer: btrahan.
  • Also null out the path, just in case someone tries to do something silly with a destroyed file.
btrahan edited edge metadata.
This revision is now accepted and ready to land.Aug 21 2014, 6:49 PM
epriestley updated this revision to Diff 24869.

Closed by commit rPHU8695cdb1270b (authored by @epriestley).