34be7a123499cc7733161482fdf5d42e4c1bae51
fix(native-file): prevent crash when unlinking missing files NativeFileSpec.unlink is codegened as a void-returning TurboModule method, which dispatches asynchronously on the mqt_v_native thread. Throwing "File does not exist" there bypasses every JS try/catch and surfaces as a fatal AndroidRuntime exception, killing the process. Make unlink idempotent (POSIX rm -f semantics): no-op when the path does not exist. The Downloads "delete all" and individual delete flows previously crashed whenever a chapter row had isDownloaded=true while its on-disk folder had already been removed (e.g. after backup restore or external cleanup). The same fix also protects useNovel, pluginManager, fetch, epub/import, backup/local, backup/utils, and AdvancedTab call sites that share the same native handler.
LNReader
LNReader is a free and open source light novel reader for Android, inspired by Tachiyomi.
Download
Get the app from our releases page.
Android 7.0 or higher.
Screenshots
Plugins
LNReader does not have any affiliation with the content providers available.
Plugin requests should be created at lnreader-plugins.
Translation
Help translate LNReader into your language on Crowdin.
Building & Contributing
See CONTRIBUTING.md
License
Description
LNReader fork with an iOS build (SideStore) and the open-lab plugin repository preconfigured
Languages
TypeScript
73%
C++
17.8%
Kotlin
4.4%
JavaScript
3.4%
Swift
0.6%
Other
0.7%
