Skip to content

Commit

Permalink
WPSC: Check that there is cached content to display in browser (#40342)
Browse files Browse the repository at this point in the history
Check that there is cached content to display in browser

Committed via a GitHub action: https://github.com/Automattic/jetpack/actions/runs/12121105781

Upstream-Ref: Automattic/jetpack@adabdc7
  • Loading branch information
donnchawp authored and matticbot committed Dec 2, 2024
1 parent 961ab35 commit 1ae37c5
Show file tree
Hide file tree
Showing 2 changed files with 30 additions and 2 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ This is an alpha version! The changes listed here are not final.
- General: Update minimum WordPress version to 6.6.

### Fixed
- Caching: make sure there is cache content to serve, even if the cache file was found
- Lossless image optimization for images (should improve performance with no visible changes).
- Move trailing space out of i18n message.
- Revert recent SVG image optimizations.
Expand Down
31 changes: 29 additions & 2 deletions wp-cache-phase2.php
Original file line number Diff line number Diff line change
Expand Up @@ -227,18 +227,44 @@ function wp_cache_serve_cache_file() {
if ( $wp_cache_gzip_encoding ) {
if ( file_exists( $file . '.gz' ) ) {
$cachefiledata = file_get_contents( $file . '.gz' );

if ( false === $cachefiledata ) {
wp_cache_debug( 'The cached gzip file could not be read. Must generate a new one.' );
return false;
}

wp_cache_debug( "Fetched gzip static page data from supercache file using PHP. File: $file.gz" );
} else {
$cachefiledata = gzencode( file_get_contents( $file ), 6, FORCE_GZIP );
$cachefiledata = file_get_contents( $file ); // phpcs:ignore WordPress.WP.AlternativeFunctions.file_get_contents_file_get_contents

if ( false === $cachefiledata ) {
wp_cache_debug( 'The cached file could not be read. Must generate a new one.' );
return false;
}

$cachefiledata = gzencode( $cachefiledata, 6, FORCE_GZIP );
wp_cache_debug( "Fetched static page data from supercache file using PHP and gzipped it. File: $file" );
}
} else {
$cachefiledata = file_get_contents( $file );

if ( false === $cachefiledata ) {
wp_cache_debug( 'The cached file could not be read. Must generate a new one.' );
return false;
}

wp_cache_debug( "Fetched static page data from supercache file using PHP. File: $file" );
}
} else {
// get dynamic data from filtered file
$cachefiledata = do_cacheaction( 'wpsc_cachedata', file_get_contents( $file ) );
$cachefiledata = file_get_contents( $file ); // phpcs:ignore WordPress.WP.AlternativeFunctions.file_get_contents_file_get_contents

if ( false === $cachefiledata ) {
wp_cache_debug( 'The cached file could not be read. Must generate a new one.' );
return false;
}

$cachefiledata = do_cacheaction( 'wpsc_cachedata', $cachefiledata );
if ( $wp_cache_gzip_encoding ) {
$cachefiledata = gzencode( $cachefiledata, 6, FORCE_GZIP );
wp_cache_debug( "Fetched dynamic page data from supercache file using PHP and gzipped it. File: $file" );
Expand Down Expand Up @@ -301,6 +327,7 @@ function wp_cache_serve_cache_file() {
}
header( 'Last-Modified: ' . $local_mod_time );
}

echo $cachefiledata;
exit();
} else {
Expand Down

0 comments on commit 1ae37c5

Please sign in to comment.