Index: Classes/Imaging/GraphicalFunctions.php
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- Classes/Imaging/GraphicalFunctions.php	(revision 75b1f663e067a24f9b71464324fa646054e929cb)
+++ Classes/Imaging/GraphicalFunctions.php	(date 1605258377245)
@@ -2162,12 +2162,12 @@
             }
             $offsetX = (int)(($data[0] - $data['origW']) * ($data['cropH'] + 100) / 200);
             $offsetY = (int)(($data[1] - $data['origH']) * ($data['cropV'] + 100) / 200);
-            $params .= ' -crop ' . $data['origW'] . 'x' . $data['origH'] . '+' . $offsetX . '+' . $offsetY . '! +repage';
+            $params .= sprintf(' -crop %dx%d+%d+%d! +repage', $data['origW'], $data['origH'], $offsetX, $offsetY);
         }
-        $command = $this->scalecmd . ' ' . $info[0] . 'x' . $info[1] . '! ' . $params . ' ';
+        $command = sprintf('%s %dx%d! %s ', $this->scalecmd, $info[0], $info[1], $params);
         // re-apply colorspace-setting for the resulting image so colors don't appear to dark (sRGB instead of RGB)
         $command .= ' -colorspace ' . $this->colorspace;
-        $cropscale = $data['crs'] ? 'crs-V' . $data['cropV'] . 'H' . $data['cropH'] : '';
+        $cropscale = $data['crs'] ? sprintf('crs-V%dH%d', $data['cropV'], $data['cropH']) : '';
         if ($this->alternativeOutputKey) {
             $theOutputName = GeneralUtility::shortMD5($command . $cropscale . PathUtility::basename($imagefile) . $this->alternativeOutputKey . '[' . $frame . ']');
         } else {
@@ -2345,8 +2345,14 @@
         $out['crs'] = $crs;
         $w = (int)$w;
         $h = (int)$h;
+
+        $info[0] = (int)$info[0];
+        $info[1] = (int)$info[1];
+
         // If there are max-values...
         if (!empty($options['maxW'])) {
+            $options['maxW'] = (int)$options['maxW'];
+
             // If width is given...
             if ($w) {
                 if ($w > $options['maxW']) {
@@ -2363,6 +2369,8 @@
             }
         }
         if (!empty($options['maxH'])) {
+            $options['maxH'] = (int)$options['maxH'];
+
             // If height is given...
             if ($h) {
                 if ($h > $options['maxH']) {
@@ -2424,17 +2432,24 @@
         $out[0] = $info[0];
         $out[1] = $info[1];
         // Set minimum-measures!
-        if (isset($options['minW']) && $out[0] < $options['minW']) {
-            if (($max || $crs) && $out[0]) {
-                $out[1] = round($out[1] * $options['minW'] / $out[0]);
-            }
-            $out[0] = $options['minW'];
+        if (isset($options['minW'])) {
+            $options['minW'] = (int)$options['minW'];
+
+            if ($out[0] < $options['minW']) {
+                if (($max || $crs) && $out[0]) {
+                    $out[1] = round($out[1] * $options['minW'] / $out[0]);
+                }
+                $out[0] = $options['minW'];
+            }
         }
-        if (isset($options['minH']) && $out[1] < $options['minH']) {
-            if (($max || $crs) && $out[1]) {
-                $out[0] = round($out[0] * $options['minH'] / $out[1]);
-            }
-            $out[1] = $options['minH'];
+        if (isset($options['minH'])) {
+            $options['minH'] = (int)$options['minH'];
+            if ($out[1] < $options['minH']) {
+                if (($max || $crs) && $out[1]) {
+                    $out[0] = round($out[0] * $options['minH'] / $out[1]);
+                }
+                $out[1] = $options['minH'];
+            }
         }
         return $out;
     }
Index: Classes/Resource/Processing/LocalCropScaleMaskHelper.php
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- Classes/Resource/Processing/LocalCropScaleMaskHelper.php	(revision 75b1f663e067a24f9b71464324fa646054e929cb)
+++ Classes/Resource/Processing/LocalCropScaleMaskHelper.php	(date 1605258563012)
@@ -165,7 +165,7 @@
 
                     //	Scaling:	****
                     $tempScale = [];
-                    $command = '-geometry ' . $tempFileInfo[0] . 'x' . $tempFileInfo[1] . '!';
+                    $command = sprintf('-geometry %dx%d!', $tempFileInfo[0], $tempFileInfo[1]);
                     $command = $this->modifyImageMagickStripProfileParameters($command, $configuration);
                     $tmpStr = $gifBuilder->randomName();
                     //	m_mask
Index: Classes/Resource/OnlineMedia/Processing/PreviewProcessing.php
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- Classes/Resource/OnlineMedia/Processing/PreviewProcessing.php	(revision 75b1f663e067a24f9b71464324fa646054e929cb)
+++ Classes/Resource/OnlineMedia/Processing/PreviewProcessing.php	(date 1605258837359)
@@ -186,9 +186,9 @@
                 }
                 $offsetX = (int)(($data[0] - $data['origW']) * ($data['cropH'] + 100) / 200);
                 $offsetY = (int)(($data[1] - $data['origH']) * ($data['cropV'] + 100) / 200);
-                $params .= ' -crop ' . $data['origW'] . 'x' . $data['origH'] . '+' . $offsetX . '+' . $offsetY . '! ';
+                $params .= sprintf(' -crop %dx%d+%d+%d! ', $data['origW'], $data['origH'], $offsetX, $offsetY);
             }
-            $command = $gifBuilder->scalecmd . ' ' . $info[0] . 'x' . $info[1] . '! ' . $params . ' ';
+            $command = sprintf('%s %dx%d!%s ', $gifBuilder->scalecmd, $info[0], $info[1], $params);
             $gifBuilder->imageMagickExec($originalFileName, $temporaryFileName, $command, $frame);
         }
         if (!file_exists($temporaryFileName)) {
