diff options
author | Mario Vavti <mario@mariovavti.com> | 2015-10-28 19:59:50 +0100 |
---|---|---|
committer | Mario Vavti <mario@mariovavti.com> | 2015-10-28 19:59:50 +0100 |
commit | f1a3b281d4573e12f7a81efa03fb1db73ba34e27 (patch) | |
tree | 54f315a4379dd503a124deafcab2d4eedd7fbf6d /include | |
parent | 59da3dfe030493dcb8511cc3c06d672d61e5ea48 (diff) | |
download | volse-hubzilla-f1a3b281d4573e12f7a81efa03fb1db73ba34e27.tar.gz volse-hubzilla-f1a3b281d4573e12f7a81efa03fb1db73ba34e27.tar.bz2 volse-hubzilla-f1a3b281d4573e12f7a81efa03fb1db73ba34e27.zip |
pathinfo() does not work in this case. getimagesize() seems more reliabel. this fixes transparent png avatars having a black background.
Diffstat (limited to 'include')
-rw-r--r-- | include/photo/photo_driver.php | 10 | ||||
-rw-r--r-- | include/photo/photo_gd.php | 2 |
2 files changed, 10 insertions, 2 deletions
diff --git a/include/photo/photo_driver.php b/include/photo/photo_driver.php index 5d61556ab..db98f7085 100644 --- a/include/photo/photo_driver.php +++ b/include/photo/photo_driver.php @@ -541,7 +541,7 @@ function guess_image_type($filename, $headers = '') { // we aren't using imagick can find it } } - +/* if(is_null($type)) { $ext = pathinfo($filename, PATHINFO_EXTENSION); $ph = photo_factory(''); @@ -551,6 +551,14 @@ function guess_image_type($filename, $headers = '') { if ($ext==$e) $type = $m; } } +*/ + if(is_null($type)) { + $size = getimagesize($filename); + $ph = photo_factory(''); + $types = $ph->supportedTypes(); + $type = ((array_key_exists($size['mime'], $types)) ? $size['mime'] : 'image/jpeg'); + } + } logger('Photo: guess_image_type: type='.$type, LOGGER_DEBUG); return $type; diff --git a/include/photo/photo_gd.php b/include/photo/photo_gd.php index fa1f700e9..2ac7287e4 100644 --- a/include/photo/photo_gd.php +++ b/include/photo/photo_gd.php @@ -137,4 +137,4 @@ class photo_gd extends photo_driver { return $string; } -}
\ No newline at end of file +} |