diff --git a/app/src/main/java/com/hippo/ehviewer/spider/SpiderDen.kt b/app/src/main/java/com/hippo/ehviewer/spider/SpiderDen.kt index 51a6660e7..602ee0a1f 100644 --- a/app/src/main/java/com/hippo/ehviewer/spider/SpiderDen.kt +++ b/app/src/main/java/com/hippo/ehviewer/spider/SpiderDen.kt @@ -187,10 +187,8 @@ class SpiderDen(private val mGalleryInfo: GalleryInfo) { suspend fun doSave(outFile: UniFile): Long { val ret: Long - outFile.openOutputStream().use { outputStream -> - outputStream.channel.use { - ret = body.bodyAsChannel().copyTo(it) - } + outFile.openOutputStream().use { + ret = body.bodyAsChannel().copyTo(it.channel) } if (contentType == ContentType.Image.GIF) outFile.openFileDescriptor("rw").use { diff --git a/app/src/main/java/com/hippo/yorozuya/IOUtils.kt b/app/src/main/java/com/hippo/yorozuya/IOUtils.kt index 23f1da4c3..c46fd7c7d 100644 --- a/app/src/main/java/com/hippo/yorozuya/IOUtils.kt +++ b/app/src/main/java/com/hippo/yorozuya/IOUtils.kt @@ -4,16 +4,9 @@ import okhttp3.ResponseBody import java.io.File fun ResponseBody.copyToFile(file: File) { - val os = file.outputStream() - val channel = os.channel - val source = source() - try { - channel.transferFrom(source, 0, Long.MAX_VALUE) - } catch (e: Throwable) { - throw e - } finally { - source.close() - channel.close() - os.close() + file.outputStream().use { os -> + source().use { + os.channel.transferFrom(it, 0, Long.MAX_VALUE) + } } }