From ed207c37c0406abd9aaa3030cb19a42b415f171d Mon Sep 17 00:00:00 2001 From: Mukesh Panchal Date: Fri, 10 Feb 2023 11:19:49 +0530 Subject: [PATCH] Fix php warnings --- modules/images/webp-uploads/load.php | 57 +++++++++++++++------------- 1 file changed, 30 insertions(+), 27 deletions(-) diff --git a/modules/images/webp-uploads/load.php b/modules/images/webp-uploads/load.php index c5928b1959..e32beff7c2 100644 --- a/modules/images/webp-uploads/load.php +++ b/modules/images/webp-uploads/load.php @@ -590,37 +590,40 @@ function webp_uploads_img_tag_update_mime_type( $original_image, $context, $atta } } - // Replace sub sizes for the image if present. - foreach ( $metadata['sizes'] as $size => $size_data ) { - if ( empty( $size_data['file'] ) ) { - continue; - } - - foreach ( $target_mimes as $target_mime ) { - if ( $target_mime === $original_mime ) { - continue; - } - - if ( ! isset( $size_data['sources'][ $target_mime ]['file'] ) ) { - continue; - } + if ( isset( $metadata['sizes'] ) && is_array( $metadata['sizes'] ) ) { + // Replace sub sizes for the image if present. + foreach ( $metadata['sizes'] as $size => $size_data ) { - if ( $size_data['file'] === $size_data['sources'][ $target_mime ]['file'] ) { + if ( empty( $size_data['file'] ) ) { continue; } - /** This filter is documented in modules/images/webp-uploads/load.php */ - $filtered_image = (string) apply_filters( 'webp_uploads_pre_replace_additional_image_source', $image, $attachment_id, $size, $target_mime, $context ); - - // If filtered image is same as the image, run our own replacement logic, otherwise rely on the filtered image. - if ( $filtered_image === $image ) { - $image = str_replace( - $size_data['file'], - $size_data['sources'][ $target_mime ]['file'], - $image - ); - } else { - $image = $filtered_image; + foreach ( $target_mimes as $target_mime ) { + if ( $target_mime === $original_mime ) { + continue; + } + + if ( ! isset( $size_data['sources'][ $target_mime ]['file'] ) ) { + continue; + } + + if ( $size_data['file'] === $size_data['sources'][ $target_mime ]['file'] ) { + continue; + } + + /** This filter is documented in modules/images/webp-uploads/load.php */ + $filtered_image = (string) apply_filters( 'webp_uploads_pre_replace_additional_image_source', $image, $attachment_id, $size, $target_mime, $context ); + + // If filtered image is same as the image, run our own replacement logic, otherwise rely on the filtered image. + if ( $filtered_image === $image ) { + $image = str_replace( + $size_data['file'], + $size_data['sources'][ $target_mime ]['file'], + $image + ); + } else { + $image = $filtered_image; + } } } }