Fix error handling in CoroutineIntentService

pull/293/head
Koitharu 3 years ago
parent 571b85dfd8
commit f115031846
No known key found for this signature in database
GPG Key ID: 8E861F8CE6E7CE27

@ -31,6 +31,9 @@ abstract class CoroutineIntentService : BaseService() {
processIntent(startId, intent) processIntent(startId, intent)
} }
} }
} catch (e: Throwable) {
e.printStackTraceDebug()
onError(startId, e)
} finally { } finally {
stopSelf(startId) stopSelf(startId)
} }

@ -52,10 +52,13 @@ class ZipOutput(
return if (entryNames.add(entry.name)) { return if (entryNames.add(entry.name)) {
val zipEntry = ZipEntry(entry.name) val zipEntry = ZipEntry(entry.name)
output.putNextEntry(zipEntry) output.putNextEntry(zipEntry)
other.getInputStream(entry).use { input -> try {
input.copyTo(output) other.getInputStream(entry).use { input ->
input.copyTo(output)
}
} finally {
output.closeEntry()
} }
output.closeEntry()
true true
} else { } else {
false false

Loading…
Cancel
Save