From cc42f6ed22ceb531db5ce25fdcf2140c7e5509f7 Mon Sep 17 00:00:00 2001 From: Henry Sudhof Date: Tue, 17 Jul 2007 15:41:16 +0000 Subject: [PATCH] Well, seems that many hosts are in a business in which they shouldn't be in. Lessen the impact for their customers by allowing to do without getimagesize for remote avatatars. #13531 git-svn-id: file:///svn/phpbb/trunk@7899 89ea8834-ac86-4346-8a33-228a782c2dd0 --- phpBB/docs/CHANGELOG.html | 2 ++ phpBB/includes/functions_user.php | 6 +++--- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/phpBB/docs/CHANGELOG.html b/phpBB/docs/CHANGELOG.html index f409195918..4a1418c3e1 100644 --- a/phpBB/docs/CHANGELOG.html +++ b/phpBB/docs/CHANGELOG.html @@ -252,6 +252,8 @@ p a {
  • [Fix] Handle forum links/redirects within viewforum if no read permission given (to display login box or error message) (Bug #13467)
  • [Fix] Prevent changing postable forum having subforums to link forum without moving subforums out first
  • [Fix] Do not display version in admin template (Bug #13495)
  • +
  • [Fix] Allow manual specification of remote avatar dimensions if getimagesize is disabled (Bug #13531)
  • + diff --git a/phpBB/includes/functions_user.php b/phpBB/includes/functions_user.php index 8750ca91a0..d9ed7980f2 100644 --- a/phpBB/includes/functions_user.php +++ b/phpBB/includes/functions_user.php @@ -1820,13 +1820,13 @@ function avatar_remote($data, &$error) } // Make sure getimagesize works... - if (($image_data = @getimagesize($data['remotelink'])) === false) + if (($image_data = @getimagesize($data['remotelink'])) === false && (empty($data['width']) || empty($data['height']))) { $error[] = $user->lang['UNABLE_GET_IMAGE_SIZE']; return false; } - if ($image_data[0] < 2 || $image_data[1] < 2) + if (!empty($image_data) && ($image_data[0] < 2 || $image_data[1] < 2)) { $error[] = $user->lang['AVATAR_NO_SIZE']; return false; @@ -1846,7 +1846,7 @@ function avatar_remote($data, &$error) $types = fileupload::image_types(); $extension = strtolower(filespec::get_extension($data['remotelink'])); - if (!isset($types[$image_data[2]]) || !in_array($extension, $types[$image_data[2]])) + if (!empty($image_data) && (!isset($types[$image_data[2]]) || !in_array($extension, $types[$image_data[2]]))) { if (!isset($types[$image_data[2]])) {