2026-02-18 09:20:47.377 12865-12865 LeakCanary io.github.landwarderer.futon.debug D ┬───
2026-02-18 09:20:47.377 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ GC Root: System class
2026-02-18 09:20:47.377 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │
2026-02-18 09:20:47.377 12865-12865 LeakCanary io.github.landwarderer.futon.debug D ├─ android.provider.FontsContract class
2026-02-18 09:20:47.377 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Leaking: NO (FutonApp↓ is not leaking and a class is never leaking)
2026-02-18 09:20:47.377 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ↓ static FontsContract.sContext
2026-02-18 09:20:47.377 12865-12865 LeakCanary io.github.landwarderer.futon.debug D ├─ io.github.landwarderer.futon.FutonApp instance
2026-02-18 09:20:47.377 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Leaking: NO (Application is a singleton)
2026-02-18 09:20:47.377 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ mBase instance of android.app.ContextImpl
2026-02-18 09:20:47.377 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ↓ Hilt_BaseApp.componentManager
2026-02-18 09:20:47.377 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ~~~~~~~~~~~~~~~~
2026-02-18 09:20:47.377 12865-12865 LeakCanary io.github.landwarderer.futon.debug D ├─ dagger.hilt.android.internal.managers.ApplicationComponentManager instance
2026-02-18 09:20:47.377 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Leaking: UNKNOWN
2026-02-18 09:20:47.377 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Retaining 40 B in 3 objects
2026-02-18 09:20:47.377 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ↓ ApplicationComponentManager.component
2026-02-18 09:20:47.378 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ~~~~~~~~~
2026-02-18 09:20:47.378 12865-12865 LeakCanary io.github.landwarderer.futon.debug D ├─ io.github.landwarderer.futon.core.DaggerBaseApp_HiltComponents_SingletonC$SingletonCImpl instance
2026-02-18 09:20:47.378 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Leaking: UNKNOWN
2026-02-18 09:20:47.378 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Retaining 53.7 kB in 1166 objects
2026-02-18 09:20:47.378 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ↓ DaggerBaseApp_HiltComponents_SingletonC$SingletonCImpl.realImageProxyInterceptorProvider
2026-02-18 09:20:47.378 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2026-02-18 09:20:47.378 12865-12865 LeakCanary io.github.landwarderer.futon.debug D ├─ dagger.internal.DoubleCheck instance
2026-02-18 09:20:47.378 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Leaking: UNKNOWN
2026-02-18 09:20:47.378 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Retaining 16 B in 1 objects
2026-02-18 09:20:47.378 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ↓ DoubleCheck.instance
2026-02-18 09:20:47.378 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ~~~~~~~~
2026-02-18 09:20:47.378 12865-12865 LeakCanary io.github.landwarderer.futon.debug D ├─ io.github.landwarderer.futon.core.network.imageproxy.RealImageProxyInterceptor instance
2026-02-18 09:20:47.378 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Leaking: UNKNOWN
2026-02-18 09:20:47.378 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Retaining 1.6 kB in 48 objects
2026-02-18 09:20:47.378 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ↓ RealImageProxyInterceptor.delegate
2026-02-18 09:20:47.378 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ~~~~~~~~
2026-02-18 09:20:47.379 12865-12865 LeakCanary io.github.landwarderer.futon.debug D ├─ kotlinx.coroutines.flow.ReadonlyStateFlow instance
2026-02-18 09:20:47.379 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Leaking: UNKNOWN
2026-02-18 09:20:47.379 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Retaining 1.6 kB in 47 objects
2026-02-18 09:20:47.379 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ↓ ReadonlyStateFlow.job
2026-02-18 09:20:47.379 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ~~~
2026-02-18 09:20:47.379 12865-12865 LeakCanary io.github.landwarderer.futon.debug D ├─ kotlinx.coroutines.StandaloneCoroutine instance
2026-02-18 09:20:47.380 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Leaking: UNKNOWN
2026-02-18 09:20:47.380 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Retaining 1.6 kB in 45 objects
2026-02-18 09:20:47.380 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ↓ JobSupport._parentHandle$volatile
2026-02-18 09:20:47.380 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ~~~~~~~~~~~~~~~~~~~~~~
2026-02-18 09:20:47.380 12865-12865 LeakCanary io.github.landwarderer.futon.debug D ├─ kotlinx.coroutines.ChildHandleNode instance
2026-02-18 09:20:47.380 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Leaking: UNKNOWN
2026-02-18 09:20:47.380 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Retaining 28 B in 1 objects
2026-02-18 09:20:47.380 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ↓ LockFreeLinkedListNode._next$volatile
2026-02-18 09:20:47.380 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ~~~~~~~~~~~~~~
2026-02-18 09:20:47.380 12865-12865 LeakCanary io.github.landwarderer.futon.debug D ├─ kotlinx.coroutines.ChildHandleNode instance
2026-02-18 09:20:47.380 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Leaking: UNKNOWN
2026-02-18 09:20:47.380 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Retaining 40 B in 2 objects
2026-02-18 09:20:47.380 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ↓ LockFreeLinkedListNode._next$volatile
2026-02-18 09:20:47.380 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ~~~~~~~~~~~~~~
2026-02-18 09:20:47.380 12865-12865 LeakCanary io.github.landwarderer.futon.debug D ├─ kotlinx.coroutines.ChildHandleNode instance
2026-02-18 09:20:47.380 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Leaking: UNKNOWN
2026-02-18 09:20:47.380 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Retaining 28 B in 1 objects
2026-02-18 09:20:47.380 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ↓ ChildHandleNode.childJob
2026-02-18 09:20:47.380 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ~~~~~~~~
2026-02-18 09:20:47.380 12865-12865 LeakCanary io.github.landwarderer.futon.debug D ├─ kotlinx.coroutines.StandaloneCoroutine instance
2026-02-18 09:20:47.380 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Leaking: UNKNOWN
2026-02-18 09:20:47.380 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Retaining 20 B in 1 objects
2026-02-18 09:20:47.380 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ↓ JobSupport._state$volatile
2026-02-18 09:20:47.380 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ~~~~~~~~~~~~~~~
2026-02-18 09:20:47.380 12865-12865 LeakCanary io.github.landwarderer.futon.debug D ├─ kotlinx.coroutines.ChildHandleNode instance
2026-02-18 09:20:47.380 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Leaking: UNKNOWN
2026-02-18 09:20:47.380 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Retaining 28 B in 1 objects
2026-02-18 09:20:47.380 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ↓ ChildHandleNode.childJob
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ~~~~~~~~
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D ├─ kotlinx.coroutines.DispatchedCoroutine instance
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Leaking: UNKNOWN
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Retaining 1.0 MB in 16121 objects
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ↓ ScopeCoroutine.uCont
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ~~~~~
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D ├─ io.github.landwarderer.futon.core.exceptions.resolve.CaptchaHandler$onError$1 instance
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Leaking: UNKNOWN
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Retaining 1.0 MB in 16120 objects
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Anonymous subclass of kotlin.coroutines.jvm.internal.SuspendLambda
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ↓ CaptchaHandler$onError$1.$request
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ~~~~~~~~
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D ├─ coil3.request.ImageRequest instance
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Leaking: UNKNOWN
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Retaining 1.0 MB in 16118 objects
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ context instance of dagger.hilt.android.internal.managers.ViewComponentManager$FragmentContextWrapper, wrapping
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ activity io.github.landwarderer.futon.main.ui.MainActivity with mDestroyed = false
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ↓ ImageRequest.listener
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ~~~~~~~~
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D ├─ io.github.landwarderer.futon.core.ui.image.FaviconView instance
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Leaking: UNKNOWN
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Retaining 1.0 MB in 16092 objects
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ View not part of a window view hierarchy
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ View.mAttachInfo is null (view detached)
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ View.mID = R.id.imageView_icon
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ View.mWindowAttachCount = 3
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ mContext instance of dagger.hilt.android.internal.managers.ViewComponentManager$FragmentContextWrapper, wrapping
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ activity io.github.landwarderer.futon.main.ui.MainActivity with mDestroyed = false
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ↓ View.mParent
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ~~~~~~~
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D ├─ android.widget.LinearLayout instance
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Leaking: UNKNOWN
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ Retaining 999.9 kB in 15967 objects
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ View not part of a window view hierarchy
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ View.mAttachInfo is null (view detached)
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ View.mWindowAttachCount = 3
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ mContext instance of dagger.hilt.android.internal.managers.ViewComponentManager$FragmentContextWrapper, wrapping
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ activity io.github.landwarderer.futon.main.ui.MainActivity with mDestroyed = false
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ↓ View.mParent
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D │ ~~~~~~~
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D ╰→ androidx.recyclerview.widget.RecyclerView instance
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D Leaking: YES (ObjectWatcher was watching this because io.github.landwarderer.futon.explore.ui.ExploreFragment
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D received Fragment#onDestroyView() callback (references to its views should be cleared to prevent leaks))
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D Retaining 991.0 kB in 15778 objects
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D key = f526fa87-36ae-4604-b716-9f5e4356f0ca
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D watchDurationMillis = 16338
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D retainedDurationMillis = 10927
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D View not part of a window view hierarchy
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D View.mAttachInfo is null (view detached)
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D View.mID = R.id.recyclerView
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D View.mWindowAttachCount = 1
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D mContext instance of dagger.hilt.android.internal.managers.ViewComponentManager$FragmentContextWrapper, wrapping
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D activity io.github.landwarderer.futon.main.ui.MainActivity with mDestroyed = false
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D METADATA
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D Build.VERSION.SDK_INT: 36
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D Build.MANUFACTURER: Google
2026-02-18 09:20:47.381 12865-12865 LeakCanary io.github.landwarderer.futon.debug D LeakCanary version: 3.0-alpha-8
2026-02-18 09:20:47.382 12865-12865 LeakCanary io.github.landwarderer.futon.debug D App process name: io.github.landwarderer.futon.debug
2026-02-18 09:20:47.382 12865-12865 LeakCanary io.github.landwarderer.futon.debug D Class count: 41570
2026-02-18 09:20:47.382 12865-12865 LeakCanary io.github.landwarderer.futon.debug D Instance count: 375929
2026-02-18 09:20:47.382 12865-12865 LeakCanary io.github.landwarderer.futon.debug D Primitive array count: 222313
2026-02-18 09:20:47.382 12865-12865 LeakCanary io.github.landwarderer.futon.debug D Object array count: 61016
2026-02-18 09:20:47.382 12865-12865 LeakCanary io.github.landwarderer.futon.debug D Thread count: 124
2026-02-18 09:20:47.382 12865-12865 LeakCanary io.github.landwarderer.futon.debug D Heap total bytes: 44869628
2026-02-18 09:20:47.382 12865-12865 LeakCanary io.github.landwarderer.futon.debug D Bitmap count: 60
2026-02-18 09:20:47.382 12865-12865 LeakCanary io.github.landwarderer.futon.debug D Bitmap total bytes: 22768827
2026-02-18 09:20:47.382 12865-12865 LeakCanary io.github.landwarderer.futon.debug D Large bitmap count: 0
2026-02-18 09:20:47.382 12865-12865 LeakCanary io.github.landwarderer.futon.debug D Large bitmap total bytes: 0
2026-02-18 09:20:47.382 12865-12865 LeakCanary io.github.landwarderer.futon.debug D Db 1: open /data/user/0/io.github.landwarderer.futon.debug/no_backup/androidx.work.workdb
2026-02-18 09:20:47.382 12865-12865 LeakCanary io.github.landwarderer.futon.debug D Db 2: open /data/user/0/io.github.landwarderer.futon.debug/databases/futon-db
2026-02-18 09:20:47.382 12865-12865 LeakCanary io.github.landwarderer.futon.debug D Stats: LruCache[maxSize=3000,hits=165565,misses=270456,hitRate=37%]
2026-02-18 09:20:47.382 12865-12865 LeakCanary io.github.landwarderer.futon.debug D RandomAccess[bytes=13788745,reads=270456,travel=166366523501,range=55580362,size=66671274]
2026-02-18 09:20:47.382 12865-12865 LeakCanary io.github.landwarderer.futon.debug D Analysis duration: 24512 ms
Brief summary
Emulator image
Details
Dumps
io.github.landwarderer.futon.explore.ui.ExploreFragmen
io.github.landwarderer.futon.settings.sources.catalog
io.github.landwarderer.futon.explore.ui.ExploreFragment
Steps to reproduce
Enable all manga sources
Futon version
9.6.10
Android version
16
Device
Pixel 9a Emulator
Acknowledgements