aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/includes
diff options
context:
space:
mode:
Diffstat (limited to 'phpBB/includes')
-rw-r--r--phpBB/includes/functions.php4
-rw-r--r--phpBB/includes/functions_posting.php6
-rw-r--r--phpBB/includes/functions_upload.php4
-rw-r--r--phpBB/includes/functions_user.php1
4 files changed, 11 insertions, 4 deletions
diff --git a/phpBB/includes/functions.php b/phpBB/includes/functions.php
index 922c85d06d..4f4ecb5117 100644
--- a/phpBB/includes/functions.php
+++ b/phpBB/includes/functions.php
@@ -2987,7 +2987,7 @@ function parse_attachments($forum_id, &$message, &$attachments, &$update_count,
$display_cat = ATTACHMENT_CATEGORY_NONE;
}
- $download_link = append_sid("{$phpbb_root_path}download.$phpEx", 'id=' . $attachment['attach_id'] . '&mode=view');
+ $download_link = append_sid("{$phpbb_root_path}download.$phpEx", 'id=' . $attachment['attach_id']);
switch ($display_cat)
{
@@ -2995,6 +2995,7 @@ function parse_attachments($forum_id, &$message, &$attachments, &$update_count,
case ATTACHMENT_CATEGORY_IMAGE:
$l_downloaded_viewed = 'VIEWED_COUNT';
$inline_link = append_sid("{$phpbb_root_path}download.$phpEx", 'id=' . $attachment['attach_id']);
+ $download_link .= '&mode=view';
$block_array += array(
'S_IMAGE' => true,
@@ -3008,6 +3009,7 @@ function parse_attachments($forum_id, &$message, &$attachments, &$update_count,
case ATTACHMENT_CATEGORY_THUMB:
$l_downloaded_viewed = 'VIEWED_COUNT';
$thumbnail_link = append_sid("{$phpbb_root_path}download.$phpEx", 'id=' . $attachment['attach_id'] . '&t=1');
+ $download_link = '&mode=view';
$block_array += array(
'S_THUMBNAIL' => true,
diff --git a/phpBB/includes/functions_posting.php b/phpBB/includes/functions_posting.php
index 9fe27fdd1a..d75a548d1b 100644
--- a/phpBB/includes/functions_posting.php
+++ b/phpBB/includes/functions_posting.php
@@ -408,7 +408,11 @@ function upload_attachment($form_name, $forum_id, $local = false, $local_storage
}
$file->clean_filename('unique', $user->data['user_id'] . '_');
- $file->move_file($config['upload_path']);
+
+ // Are we uploading an image *and* this image being within the image category? Only then perform additional image checks.
+ $no_image = ($cat_id == ATTACHMENT_CATEGORY_IMAGE) ? false : true;
+
+ $file->move_file($config['upload_path'], false, $no_image);
if (sizeof($file->error))
{
diff --git a/phpBB/includes/functions_upload.php b/phpBB/includes/functions_upload.php
index 93254a0d08..93b809f296 100644
--- a/phpBB/includes/functions_upload.php
+++ b/phpBB/includes/functions_upload.php
@@ -230,7 +230,7 @@ class filespec
* @param octal $chmod Permission mask for chmodding the file after a successful move
* @access public
*/
- function move_file($destination, $overwrite = false, $chmod = 0666)
+ function move_file($destination, $overwrite = false, $skip_image_check = false, $chmod = 0666)
{
global $user, $phpbb_root_path;
@@ -315,7 +315,7 @@ class filespec
// Try to get real filesize from destination folder
$this->filesize = (@filesize($this->destination_file)) ? @filesize($this->destination_file) : $this->filesize;
- if ($this->is_image())
+ if ($this->is_image() && !$skip_image_check)
{
$this->width = $this->height = 0;
diff --git a/phpBB/includes/functions_user.php b/phpBB/includes/functions_user.php
index 3da49026c9..a53577d68d 100644
--- a/phpBB/includes/functions_user.php
+++ b/phpBB/includes/functions_user.php
@@ -1853,6 +1853,7 @@ function avatar_get_dimensions($avatar, $avatar_type, &$error, $current_x = 0, $
$avatar = $phpbb_root_path . $config['avatar_gallery_path'] . '/' . $avatar ;
break;
}
+
// Make sure getimagesize works...
if (($image_data = @getimagesize($avatar)) === false)
{