Don't use imagedestroy() in PHP 8.0 or higher

This commit is contained in:
Kijin Sung 2025-11-17 09:41:47 +09:00
parent 2eaf869eba
commit 950b1c4074

View file

@ -656,9 +656,15 @@ class FileHandler
$resize_needed = true; $resize_needed = true;
$thumb = imagecreatetruecolor($resize_width, $resize_height); $thumb = imagecreatetruecolor($resize_width, $resize_height);
if (!$thumb) if (!$thumb)
{
if (version_compare(PHP_VERSION, '8.0', '<'))
{ {
imagedestroy($source); imagedestroy($source);
}
else
{
unset($source); unset($source);
}
return false; return false;
} }
@ -719,8 +725,10 @@ class FileHandler
imagecopyresampled($thumb, $source, $dst_x, $dst_y, 0, 0, $dst_width, $dst_height, $width, $height); imagecopyresampled($thumb, $source, $dst_x, $dst_y, 0, 0, $dst_width, $dst_height, $width, $height);
} }
imagedestroy($source); if (version_compare(PHP_VERSION, '8.0', '>='))
{
unset($source); unset($source);
}
// create directory // create directory
self::makeDir(dirname($target_file)); self::makeDir(dirname($target_file));
@ -751,15 +759,28 @@ class FileHandler
$output = imagewebp($thumb, $target_file); $output = imagewebp($thumb, $target_file);
} }
else else
{
if (version_compare(PHP_VERSION, '8.0', '<'))
{ {
imagedestroy($thumb); imagedestroy($thumb);
}
else
{
unset($thumb); unset($thumb);
}
return false; return false;
} }
@chmod($target_file, 0666 & ~Rhymix\Framework\Storage::getUmask()); @chmod($target_file, 0666 & ~Rhymix\Framework\Storage::getUmask());
if (version_compare(PHP_VERSION, '8.0', '<'))
{
imagedestroy($thumb); imagedestroy($thumb);
}
else
{
unset($thumb); unset($thumb);
}
return $output; return $output;
} }