1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-08-06 16:56:44 +02:00

[feature/avatars] Fixing remote avatars size checks

Remote avatars size checks were broken. It assumed getimagesize() was
available and used the wrong template values.

PHPBB3-10018
This commit is contained in:
Cullen Walsh
2011-04-18 23:34:56 -07:00
committed by Cullen Walsh
parent 00d4b9d431
commit f02f621686
3 changed files with 26 additions and 16 deletions

View File

@@ -80,22 +80,25 @@ class phpbb_avatar_driver_remote extends phpbb_avatar_driver
}
// Make sure getimagesize works...
if (($image_data = getimagesize($url)) === false && ($width <= 0 || $height <= 0))
if (function_exists('getimagesize'))
{
$error[] = 'UNABLE_GET_IMAGE_SIZE';
return false;
if (($width <= 0 || $height <= 0) && (($image_data = @getimagesize($url)) === false))
{
$error[] = 'UNABLE_GET_IMAGE_SIZE';
return false;
}
if (!empty($image_data) && ($image_data[0] <= 0 || $image_data[1] <= 0))
{
$error[] = 'AVATAR_NO_SIZE';
return false;
}
$width = ($width && $height) ? $width : $image_data[0];
$height = ($width && $height) ? $height : $image_data[1];
}
if (!empty($image_data) && ($image_data[0] < 2 || $image_data[1] < 2))
{
$error[] = 'AVATAR_NO_SIZE';
return false;
}
$width = ($width && $height) ? $width : $image_data[0];
$height = ($width && $height) ? $height : $image_data[1];
if ($width < 2 || $height < 2)
if ($width <= 0 || $height <= 0)
{
$error[] = 'AVATAR_NO_SIZE';
return false;