07-07 00:06:33.632 5375 5375 E AndroidRuntime: FATAL EXCEPTION: main
07-07 00:06:33.632 5375 5375 E AndroidRuntime: Process: com.jim.sharetocomputer, PID: 5375
07-07 00:06:33.632 5375 5375 E AndroidRuntime: java.lang.RuntimeException: Canvas: trying to use a recycled bitmap android.graphics.Bitmap@308c95c
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.graphics.Canvas.throwIfCannotDraw(Canvas.java:1311)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.graphics.Canvas.drawBitmap(Canvas.java:1445)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.graphics.drawable.BitmapDrawable.draw(BitmapDrawable.java:551)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.View.getDrawableRenderNode(View.java:17784)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.View.drawBackground(View.java:17708)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.View.draw(View.java:17515)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.View.updateDisplayListIfDirty(View.java:16517)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.View.draw(View.java:17293)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.ViewGroup.drawChild(ViewGroup.java:3926)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3716)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.View.updateDisplayListIfDirty(View.java:16512)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.View.draw(View.java:17293)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.ViewGroup.drawChild(ViewGroup.java:3926)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3716)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.View.updateDisplayListIfDirty(View.java:16512)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.View.draw(View.java:17293)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.ViewGroup.drawChild(ViewGroup.java:3926)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3716)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.View.updateDisplayListIfDirty(View.java:16512)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.View.draw(View.java:17293)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.ViewGroup.drawChild(ViewGroup.java:3926)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3716)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.View.updateDisplayListIfDirty(View.java:16512)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.View.draw(View.java:17293)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.ViewGroup.drawChild(ViewGroup.java:3926)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at androidx.drawerlayout.widget.DrawerLayout.drawChild(DrawerLayout.java:1426)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3716)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.View.draw(View.java:17527)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.View.updateDisplayListIfDirty(View.java:16517)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.View.draw(View.java:17293)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.ViewGroup.drawChild(ViewGroup.java:3926)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3716)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.View.updateDisplayListIfDirty(View.java:16512)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.View.draw(View.java:17293)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.ViewGroup.drawChild(ViewGroup.java:3926)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3716)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.View.updateDisplayListIfDirty(View.java:16512)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.View.draw(View.java:17293)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.ViewGroup.drawChild(ViewGroup.java:3926)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3716)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.View.updateDisplayListIfDirty(View.java:16512)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.View.draw(View.java:17293)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.ViewGroup.drawChild(ViewGroup.java:3926)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3716)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.View.updateDisplayListIfDirty(View.java:16512)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.View.draw(View.java:17293)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.ViewGroup.drawChild(ViewGroup.java:3926)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3716)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.View.draw(View.java:17527)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at com.android.internal.policy.PhoneWindow$DecorView.draw(PhoneWindow.java:3184)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.View.updateDisplayListIfDirty(View.java:16517)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:325)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:331)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:366)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.ViewRootImpl.draw(ViewRootImpl.java:3234)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:3033)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2615)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1528)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:7524)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.Choreographer$CallbackRecord.run(Choreographer.java:911)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.Choreographer.doCallbacks(Choreographer.java:686)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.Choreographer.doFrame(Choreographer.java:622)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:897)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.os.Handler.handleCallback(Handler.java:739)
07-07 00:06:33.632 5375 5375 E AndroidRuntime: at android.os.Handler.dispatchMes
Expected behavior
I expected that I could cancel the QR code scanning process after selecting a file to share.
Actual behavior
After selecting a file to share, when I canceled the QR code scanning process, then the app crashed.
How to reproduce
Here is every possible detail to reproduce the bug.
Recording Of The Bug
https://www.youtube.com/watch?v=kH8UNpIGgls
LogCat