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
Lint
Lint Skipped
Unit
Tests Skipped

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).