✅ 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>
32 lines
708 B
PHP
32 lines
708 B
PHP
<?php
|
|
|
|
namespace WebPExpress;
|
|
|
|
class Sanitize
|
|
{
|
|
|
|
/**
|
|
* The NUL character is a demon, because it can be used to bypass other tests
|
|
* See https://st-g.de/2011/04/doing-filename-checks-securely-in-PHP.
|
|
*
|
|
* @param string $string string remove NUL characters in
|
|
*/
|
|
public static function removeNUL($string)
|
|
{
|
|
return str_replace(chr(0), '', $string);
|
|
}
|
|
|
|
public static function removeStreamWrappers($string)
|
|
{
|
|
return preg_replace('#^\\w+://#', '', $string);
|
|
}
|
|
|
|
public static function path($string)
|
|
{
|
|
$string = self::removeNUL($string);
|
|
$string = self::removeStreamWrappers($string);
|
|
return $string;
|
|
}
|
|
|
|
}
|