diff --git a/snappymail/v/0.0.0/app/libraries/snappymail/image/exif.php b/snappymail/v/0.0.0/app/libraries/snappymail/image/exif.php new file mode 100644 index 000000000..2558176b3 --- /dev/null +++ b/snappymail/v/0.0.0/app/libraries/snappymail/image/exif.php @@ -0,0 +1,31 @@ +file = 'blob'; $gd2->type = (int) $imginfo[2]; $gd2->format = $format; - if (\is_callable('exif_read_data') && $exif = \exif_read_data('data://'.$imginfo['mime'].';base64,' . \base64_encode($data))) { - $gd2->orientation = \max(1, \intval($oMetadata['IFD0.Orientation'] ?? 0)); - } + $gd2->orientation = Exif::getImageOrientation($data, $imginfo); return $gd2; } diff --git a/snappymail/v/0.0.0/app/libraries/snappymail/image/gmagick.php b/snappymail/v/0.0.0/app/libraries/snappymail/image/gmagick.php index 38480d586..6980e033a 100644 --- a/snappymail/v/0.0.0/app/libraries/snappymail/image/gmagick.php +++ b/snappymail/v/0.0.0/app/libraries/snappymail/image/gmagick.php @@ -7,7 +7,7 @@ if (!\class_exists('Gmagick',false)) { return; } class GMagick extends \Gmagick implements \SnappyMail\Image { private - $orientation = 1; + $orientation = 0; function __destruct() { @@ -22,10 +22,8 @@ class GMagick extends \Gmagick implements \SnappyMail\Image } if (\method_exists($gmagick, 'getImageOrientation')) { $gmagick->orientation = $gmagick->getImageOrientation(); - } else if (\is_callable('exif_read_data') && $imginfo = \getimagesizefromstring($data)) { - if ($exif = \exif_read_data('data://'.$imginfo['mime'].';base64,' . \base64_encode($data))) { - $gmagick->orientation = \max(1, \intval($exif['IFD0.Orientation'] ?? 0)); - } + } else { + $gd2->orientation = Exif::getImageOrientation($data); } return $gmagick; }