From 31fbc8c95c60bf10baeb5b252eb8aaed708065f1 Mon Sep 17 00:00:00 2001 From: Harsh Shandilya Date: Sat, 3 Apr 2021 15:08:09 +0530 Subject: [PATCH] Options: manually close streams Signed-off-by: Harsh Shandilya --- .../main/java/dev/msfjarvis/lobsters/ui/settings/Options.kt | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/dev/msfjarvis/lobsters/ui/settings/Options.kt b/app/src/main/java/dev/msfjarvis/lobsters/ui/settings/Options.kt index e9badec4..72429a41 100644 --- a/app/src/main/java/dev/msfjarvis/lobsters/ui/settings/Options.kt +++ b/app/src/main/java/dev/msfjarvis/lobsters/ui/settings/Options.kt @@ -22,9 +22,10 @@ fun BackupOption( val result = registerForActivityResult(ActivityResultContracts.CreateDocument()) { uri -> if (uri == null) return@registerForActivityResult - context.contentResolver.openOutputStream(uri)?.use { + context.contentResolver.openOutputStream(uri)?.let { coroutineScope.launch(Dispatchers.IO) { it.write(backupHandler.exportSavedPosts().toByteArray(Charsets.UTF_8)) + it.close() } } } @@ -44,9 +45,10 @@ fun RestoreOption( val result = registerForActivityResult(ActivityResultContracts.GetContent()) { uri -> if (uri == null) return@registerForActivityResult - context.contentResolver.openInputStream(uri)?.use { + context.contentResolver.openInputStream(uri)?.let { coroutineScope.launch(Dispatchers.IO) { backupHandler.importSavedPosts(it.readBytes().toString(Charsets.UTF_8)) + it.close() } } }