Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork9.7k
[HttpFoundation] Check file exists before unlink#29764
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
Uh oh!
There was an error while loading.Please reload this page.
Conversation
| fclose($file); | ||
| if ($this->deleteFileAfterSend) { | ||
| if ($this->deleteFileAfterSend &&file_exists($this->file->getPathname())) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
doenstfopen already fail in this case?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
The file can be deleted after fopen() while it is being sent to the user.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
got ya :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
But the file could also be removed between the calls tofile_exists() andunlink(). Maybe it would be better to silence the delete operation instead.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Downloading is a much longer process thanfile_exists()
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Also, I do not think that@unlink($this->file->getPathname()); would be a good solution here, it will ignore all errors, and not just 'No such file or directory'.
What else needs to be done for this to be merged ?
nicolas-grekas commentedJan 25, 2019
Thank you @adam-mospan. |
…pan)This PR was submitted for the master branch but it was squashed and merged into the 3.4 branch instead (closes#29764).Discussion----------[HttpFoundation] Check file exists before unlinkCheck file exists to prevent ErrorException| Q | A| ------------- | ---| Branch? | 2.6 <!-- see below -->| Bug fix? | yes| New feature? | no <!-- don't forget to update src/**/CHANGELOG.md files -->| BC breaks? | no <!-- seehttps://symfony.com/bc -->| Deprecations? | no <!-- don't forget to update UPGRADE-*.md and src/**/CHANGELOG.md files -->| Tests pass? | yes <!-- please add some, will be required by reviewers -->| Fixed tickets | #... <!-- #-prefixed issue number(s), if any -->| License | MIT| Doc PR | symfony/symfony-docs#... <!-- required for new features --><!--Write a short README entry for your feature/bugfix here (replace this comment block.)This will help people understand your PR and can be used as a start of the Doc PR.Additionally: - Bug fixes must be submitted against the lowest branch where they apply (lowest branches are regularly merged to upper ones so they get the fixes too). - Features and deprecations must be submitted against the master branch.-->Commits-------1954187 [HttpFoundation] Check file exists before unlink
Uh oh!
There was an error while loading.Please reload this page.
Check file exists to prevent ErrorException