diff options
author | alecpl <alec@alec.pl> | 2011-08-22 14:33:02 +0000 |
---|---|---|
committer | alecpl <alec@alec.pl> | 2011-08-22 14:33:02 +0000 |
commit | f0bccb7fb23847b24c8bd598cfb75fc385550211 (patch) | |
tree | 0a5d14790bdfeed71ef186cd1dfc5f7fd72b845c /program/steps/addressbook | |
parent | 3ef524d806caf990d6c7c3f64020af53545e849a (diff) |
- Fix image type check for contact photo uploads
Diffstat (limited to 'program/steps/addressbook')
-rw-r--r-- | program/steps/addressbook/upload_photo.inc | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/program/steps/addressbook/upload_photo.inc b/program/steps/addressbook/upload_photo.inc index 1ed71f8cb..f0430ae80 100644 --- a/program/steps/addressbook/upload_photo.inc +++ b/program/steps/addressbook/upload_photo.inc @@ -19,14 +19,20 @@ */ +// Supported image format types +// ImageMagick works with other non-image types (e.g.pdf) we don't want here +$IMAGE_TYPES = explode(',', 'jpeg,jpg,jp2,tiff,tif,bmp,eps,gif,png,png8,png24,png32,svg,ico'); + // clear all stored output properties (like scripts and env vars) $OUTPUT->reset(); -console($_FILES); + if ($filepath = $_FILES['_photo']['tmp_name']) { // check file type and resize image $imageprop = rcmail::imageprops($_FILES['_photo']['tmp_name']); - if ($imageprop['width'] && $imageprop['height']) { + if (in_array(strtolower($imageprop['type']), $IMAGE_TYPES) + && $imageprop['width'] && $imageprop['height'] + ) { $maxsize = intval($RCMAIL->config->get('contact_photo_size', 160)); $tmpfname = tempnam($RCMAIL->config->get('temp_dir'), 'rcmImgConvert'); $save_hook = 'attachment_upload'; |