diff --git a/app/src/main/java/org/koitharu/kotatsu/download/domain/DownloadManager.kt b/app/src/main/java/org/koitharu/kotatsu/download/domain/DownloadManager.kt index e1933a683..0b3c67ccb 100644 --- a/app/src/main/java/org/koitharu/kotatsu/download/domain/DownloadManager.kt +++ b/app/src/main/java/org/koitharu/kotatsu/download/domain/DownloadManager.kt @@ -141,8 +141,9 @@ class DownloadManager( } val localManga = localMangaRepository.getFromFile(output.file) outState.value = DownloadState.Done(startId, data, cover, localManga) - } catch (_: CancellationException) { + } catch (e: CancellationException) { outState.value = DownloadState.Cancelled(startId, manga, cover) + throw e } catch (e: Throwable) { if (BuildConfig.DEBUG) { e.printStackTrace() diff --git a/app/src/main/java/org/koitharu/kotatsu/reader/ui/ReaderViewModel.kt b/app/src/main/java/org/koitharu/kotatsu/reader/ui/ReaderViewModel.kt index 9f1f18983..688cca84f 100644 --- a/app/src/main/java/org/koitharu/kotatsu/reader/ui/ReaderViewModel.kt +++ b/app/src/main/java/org/koitharu/kotatsu/reader/ui/ReaderViewModel.kt @@ -143,7 +143,8 @@ class ReaderViewModel( val page = getCurrentPage() ?: error("Page not found") externalStorageHelper.savePage(page, destination) onPageSaved.postCall(destination) - } catch (_: CancellationException) { + } catch (e: CancellationException) { + throw e } catch (e: Exception) { if (BuildConfig.DEBUG) { e.printStackTrace() diff --git a/app/src/main/java/org/koitharu/kotatsu/reader/ui/pager/PageHolderDelegate.kt b/app/src/main/java/org/koitharu/kotatsu/reader/ui/pager/PageHolderDelegate.kt index 9ce52f4fe..5630cb1ba 100644 --- a/app/src/main/java/org/koitharu/kotatsu/reader/ui/pager/PageHolderDelegate.kt +++ b/app/src/main/java/org/koitharu/kotatsu/reader/ui/pager/PageHolderDelegate.kt @@ -109,7 +109,7 @@ class PageHolderDelegate( state = State.LOADED callback.onImageReady(file.toUri()) } catch (e: CancellationException) { - // do nothing + throw e } catch (e: Exception) { state = State.ERROR error = e