From 895dcf32448f66189301d7d9422855d1b362992b Mon Sep 17 00:00:00 2001 From: Mike Primm Date: Wed, 22 Dec 2021 22:33:10 -0600 Subject: [PATCH] Fix webp v1.2.x --- .../main/java/org/dynmap/utils/ImageIOManager.java | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/DynmapCore/src/main/java/org/dynmap/utils/ImageIOManager.java b/DynmapCore/src/main/java/org/dynmap/utils/ImageIOManager.java index 3d57cd69..e3fd9123 100644 --- a/DynmapCore/src/main/java/org/dynmap/utils/ImageIOManager.java +++ b/DynmapCore/src/main/java/org/dynmap/utils/ImageIOManager.java @@ -2,6 +2,7 @@ package org.dynmap.utils; import java.io.File; import java.io.FileOutputStream; import java.io.OutputStream; +import java.util.ArrayList; import java.util.Iterator; import java.awt.image.BufferedImage; import java.awt.image.DirectColorModel; @@ -59,8 +60,17 @@ public class ImageIOManager { fos.close(); // Run encoder to new new temp file File tmpfile2 = File.createTempFile("pngToWebp", "webp"); - String args[] = { core.getCWEBPPath(), fmt.getID().endsWith("-l")?"-lossless":"", "-q", Integer.toString((int)fmt.getQuality()), tmpfile.getAbsolutePath(), "-o", tmpfile2.getAbsolutePath() }; - Process pr = Runtime.getRuntime().exec(args); + ArrayList args = new ArrayList(); + args.add(core.getCWEBPPath()); + if (fmt.getID().endsWith("-l")) { + args.add("-lossless"); + } + args.add("-q"); + args.add(Integer.toString((int)fmt.getQuality())); + args.add(tmpfile.getAbsolutePath()); + args.add("-o"); + args.add(tmpfile2.getAbsolutePath()); + Process pr = Runtime.getRuntime().exec(args.toArray(new String[0])); try { pr.waitFor(); } catch (InterruptedException ix) {