Skip to content
Snippets Groups Projects
Commit 62b37fbb authored by Morris Jobke's avatar Morris Jobke
Browse files

Merge pull request #10024 from owncloud/preview-restrict-height

Also keep maxY into account when scaling a preview while preserving aspect ratio
parents ef3c0c50 c0663202
No related branches found
No related tags found
No related merge requests found
......@@ -70,10 +70,6 @@ if(substr($path, 0, 1) === '/') {
$path = substr($path, 1);
}
if ($keepAspect === true) {
$maxY = $maxX;
}
if($maxX === 0 || $maxY === 0) {
\OC_Response::setStatus(\OC_Response::STATUS_BAD_REQUEST);
\OC_Log::write('core-preview', 'x and/or y set to 0', \OC_Log::DEBUG);
......
......@@ -21,10 +21,6 @@ if ($file === '') {
exit;
}
if ($keepAspect === true) {
$maxY = $maxX;
}
if ($maxX === 0 || $maxY === 0) {
//400 Bad Request
\OC_Response::setStatus(400);
......
......@@ -561,9 +561,15 @@ class Preview {
$realX = (int)$image->width();
$realY = (int)$image->height();
// compute $maxY using the aspect of the generated preview
// compute $maxY and $maxX using the aspect of the generated preview
if ($this->keepAspect) {
$y = $x / ($realX / $realY);
$ratio = $realX / $realY;
if($x / $ratio < $y) {
// width restricted
$y = $x / $ratio;
} else {
$x = $y * $ratio;
}
}
if ($x === $realX && $y === $realY) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment