# HG changeset patch # User David Barts # Date 1595191763 25200 # Node ID fad32eda667fa1b32ba5da6a998a16ebaf136ea1 # Parent bed255e4c2dc9cf265527079b666801c047dbb6c Fix ImageWriter leak. diff -r bed255e4c2dc -r fad32eda667f src/name/blackcap/imageprep/Menus.kt --- a/src/name/blackcap/imageprep/Menus.kt Sun Jul 19 13:32:02 2020 -0700 +++ b/src/name/blackcap/imageprep/Menus.kt Sun Jul 19 13:49:23 2020 -0700 @@ -147,12 +147,16 @@ /* xxx - end workaround */ ios.use { val writer = ImageIO.getImageWritersByFormatName("jpeg").next() - val iwp = writer.getDefaultWriteParam().apply { - setCompressionMode(ImageWriteParam.MODE_EXPLICIT) - setCompressionQuality(Settings.outputQuality.toFloat() / 100.0f) + try { + val iwp = writer.getDefaultWriteParam().apply { + setCompressionMode(ImageWriteParam.MODE_EXPLICIT) + setCompressionQuality(Settings.outputQuality.toFloat() / 100.0f) + } + writer.setOutput(it) + writer.write(null, IIOImage(w.image, null, null), iwp) + } finally { + writer.dispose() } - writer.setOutput(it) - writer.write(null, IIOImage(w.image, null, null), iwp) } null } catch (e: IOException) {