D7: file_get_stream_wrappers cache poisoning in update_check_requirements() #3789
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Currently
update_check_requirements()
runsupdate_check_requirements()
before a full bootstrap. Andupdate_check_requirements()
performs a writeable check on the filesystem - which invokes the file stream wrapper handling.This fills a the static cache of
file_get_stream_wrappers
and because of the low bootstrap level not all available stream wrappers will be registered.This can lead to missing stream wrappers in update hooks.
We should reset the file_get_stream_wrappers static cache before running the full bootstrap which then will re-evaluate the available stream wrappers.