fix: prevent fatal error with list() assignment on missing images in PHP 8.2+#1035
Open
fuleinist wants to merge 1 commit intoCodeinwp:masterfrom
Open
fix: prevent fatal error with list() assignment on missing images in PHP 8.2+#1035fuleinist wants to merge 1 commit intoCodeinwp:masterfrom
fuleinist wants to merge 1 commit intoCodeinwp:masterfrom
Conversation
…PHP 8.2+ Fixes Codeinwp#1034 When an image file is missing (offloaded to CDN or deleted), the get_svg_for() method would fail with a fatal error on PHP 8.2+ because list() was being called on a boolean false value instead of an array. This fix adds an is_array() check before the list() assignment to gracefully handle missing images, allowing the fallback logic to attempt getting dimensions from attachment metadata.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
All Submissions:
Changes proposed in this Pull Request:
Fix a fatal error that occurs in PHP 8.2+ when the lazyload placeholder feature is enabled and an image file is missing from the local uploads directory (e.g., offloaded to CDN or deleted).
The issue occurs in
inc/lazyload_replacer.phpat line 532 wherelist($width, $height) = $sizesis called, but `` can befalsewhen the image file doesn't exist. PHP 8.2+ requires the argument to `list()` to be an array.Closes #1034.
How to test the changes in this Pull Request:
TypeError: list(): Argument #1 ($array) must be of type array, bool givenOther information: