From 27e7332a9c6dca6c5602b025b0880ce46b796ca4 Mon Sep 17 00:00:00 2001
From: Morris Jobke <hey@morrisjobke.de>
Date: Tue, 18 Aug 2020 16:51:59 +0200
Subject: [PATCH] Cast float/char to int to avoid invalid scalar argument
 warning

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
---
 build/psalm-baseline.xml        | 4 +---
 lib/private/legacy/OC_Image.php | 4 ++--
 2 files changed, 3 insertions(+), 5 deletions(-)

diff --git a/build/psalm-baseline.xml b/build/psalm-baseline.xml
index 5a2d3ab43bf..2e040c3e5ea 100644
--- a/build/psalm-baseline.xml
+++ b/build/psalm-baseline.xml
@@ -6045,9 +6045,7 @@
     <InvalidReturnType occurrences="1">
       <code>bool</code>
     </InvalidReturnType>
-    <InvalidScalarArgument occurrences="19">
-      <code>$bits</code>
-      <code>$lastIndex</code>
+    <InvalidScalarArgument occurrences="17">
       <code>$this-&gt;bitDepth</code>
       <code>90</code>
       <code>$imagePath</code>
diff --git a/lib/private/legacy/OC_Image.php b/lib/private/legacy/OC_Image.php
index 4fdbfb3909f..1e2791f62c9 100644
--- a/lib/private/legacy/OC_Image.php
+++ b/lib/private/legacy/OC_Image.php
@@ -1175,7 +1175,7 @@ if (!function_exists('imagebmp')) {
 		} elseif ($bit == 32) {
 			$bit = 24;
 		}
-		$bits = pow(2, $bit);
+		$bits = (int)pow(2, $bit);
 		imagetruecolortopalette($im, true, $bits);
 		$width = imagesx($im);
 		$height = imagesy($im);
@@ -1211,7 +1211,7 @@ if (!function_exists('imagebmp')) {
 			} // RLE8
 			elseif ($compression == 1 && $bit == 8) {
 				for ($j = $height - 1; $j >= 0; $j--) {
-					$lastIndex = "\0";
+					$lastIndex = 0;
 					$sameNum = 0;
 					for ($i = 0; $i <= $width; $i++) {
 						$index = imagecolorat($im, $i, $j);
-- 
GitLab