diff options
author | Wave <wave72@users.noreply.github.com> | 2015-11-06 09:09:58 +0100 |
---|---|---|
committer | Wave <wave72@users.noreply.github.com> | 2015-11-06 09:09:58 +0100 |
commit | 30d083ac3cbdf36171cfee7b892271b9b587325c (patch) | |
tree | f2f63728f86f8336330d31ee8edf2fcd742dc71e /include/photo/photo_driver.php | |
parent | 50cf095c000813d0b1408d929c1fa7422b131a3d (diff) | |
parent | 4ca0c2cfd14df5e2b6e9c7f59a10628f7653d6a4 (diff) | |
download | volse-hubzilla-30d083ac3cbdf36171cfee7b892271b9b587325c.tar.gz volse-hubzilla-30d083ac3cbdf36171cfee7b892271b9b587325c.tar.bz2 volse-hubzilla-30d083ac3cbdf36171cfee7b892271b9b587325c.zip |
Merge pull request #2 from redmatrix/master
Update to latest hubzilla
Diffstat (limited to 'include/photo/photo_driver.php')
-rw-r--r-- | include/photo/photo_driver.php | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/include/photo/photo_driver.php b/include/photo/photo_driver.php index 32b9bd302..285cbc8fb 100644 --- a/include/photo/photo_driver.php +++ b/include/photo/photo_driver.php @@ -546,11 +546,18 @@ function guess_image_type($filename, $headers = '') { $ext = pathinfo($filename, PATHINFO_EXTENSION); $ph = photo_factory(''); $types = $ph->supportedTypes(); - $type = "image/jpeg"; foreach ($types as $m=>$e){ 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; @@ -586,16 +593,12 @@ function import_xchan_photo($photo,$xchan,$thing = false) { if($photo) { $filename = basename($photo); - $type = guess_image_type($photo); - - if(! $type) - $type = 'image/jpeg'; - $result = z_fetch_url($photo,true); if($result['success']) { $img_str = $result['body']; + $type = guess_image_type($photo, $result['header']); $h = explode("\n",$result['header']); if($h) { @@ -731,6 +734,11 @@ function import_channel_photo($photo,$type,$aid,$uid) { $photo_failure = true; } - return(($photo_failure)? false : true); + //return(($photo_failure)? false : true); + + if($photo_failure) + return false; + else + return $hash; } |