✅ Fixed bulk conversion getting stuck on missing files ✅ Added robust error handling and timeout protection ✅ Improved JavaScript response parsing ✅ Added file existence validation ✅ Fixed missing PHP class imports ✅ Added comprehensive try-catch error recovery 🔧 Key fixes: - File existence checks before conversion attempts - 30-second timeout protection per file - Graceful handling of 500 errors and JSON parsing issues - Automatic continuation to next file on failures - Cache busting for JavaScript updates 🎯 Result: Bulk conversion now completes successfully even with missing files 🚀 Generated with Claude Code (https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
33 lines
926 B
PHP
33 lines
926 B
PHP
<?php
|
|
|
|
/*
|
|
This class is made to not be dependent on Wordpress functions and must be kept like that.
|
|
It is used by webp-on-demand.php. It is also used for bulk conversion.
|
|
*/
|
|
namespace WebPExpress;
|
|
|
|
|
|
class BiggerThanSource
|
|
{
|
|
/**
|
|
* Check if webp is bigger than original.
|
|
*
|
|
* @return boolean|null True if it is bigger than original, false if not. NULL if it cannot be determined
|
|
*/
|
|
public static function bigger($source, $destination)
|
|
{
|
|
if ((!@file_exists($source)) || (!@file_exists($destination))) {
|
|
return null;
|
|
}
|
|
$filesizeDestination = @filesize($destination);
|
|
$filesizeSource = @filesize($source);
|
|
|
|
// sizes are FALSE on failure (ie if file does not exists)
|
|
if (($filesizeSource === false) || ($filesizeDestination === false)) {
|
|
return null;
|
|
}
|
|
|
|
return ($filesizeDestination > $filesizeSource);
|
|
}
|
|
}
|