Fix error handling in CoroutineIntentService
This commit is contained in:
@@ -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
|
||||||
|
|||||||
Reference in New Issue
Block a user